/*
 * Copyright (C) 2008-2013 TrinityCore <http://www.trinitycore.org/>
 * Copyright (C) 2005-2009 MaNGOS <http://getmangos.com/>
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the
 * Free Software Foundation; either version 2 of the License, or (at your
 * option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License alonge
 * with this program. If not, see <http://www.gnu.org/licenses/>.
 */

/// \addtogroup u2w
/// @{
/// \file

#ifndef _OPCODES_H
#define _OPCODES_H

#include "Common.h"

enum OpcodeTransferDirection : uint8
{
    WOW_SERVER = 0,
    WOW_CLIENT = 1,

    TRANSFER_DIRECTION_MAX = 2,
};

/// List of Opcodes
enum Opcodes
{
    NUM_OPCODE_HANDLERS                               = (0x7FFF+1),
    UNKNOWN_OPCODE                                    = (0xFFFF+1),
    NULL_OPCODE                                       = 0,
    COMPRESSED_OPCODE_MASK                            = 0x8000,

    // CMSG
    CMSG_ACCEPT_LEVEL_GRANT                           = 0x000,  // 5.0.5 16048
    CMSG_ACCEPT_TRADE                                 = 0x1501, // 5.4.0 17399
    CMSG_ACTIVATETAXI                                 = 0x1B6E, // 5.4.0 17399
    CMSG_ACTIVATETAXIEXPRESS                          = 0x176E, // 5.4.0 17399
    CMSG_ADDON_REGISTERED_PREFIXES                    = 0x10BD, // 5.4.0 17399
    CMSG_ADD_FRIEND                                   = 0x16BD, // 5.4.0 17399
    CMSG_ADD_IGNORE                                   = 0x1224, // 5.4.0 17399
    CMSG_ADD_VOICE_IGNORE                             = 0x000,  // 5.0.5 16048
    CMSG_ALTER_APPEARANCE                             = 0x1B2F, // 5.4.0 17399
    CMSG_AREATRIGGER                                  = 0x1907, // 5.4.0 17399
    CMSG_AREA_SPIRIT_HEALER_QUERY                     = 0x17EF, // 5.4.0 17399
    CMSG_AREA_SPIRIT_HEALER_QUEUE                     = 0x13B2, // 5.4.0 17399
    CMSG_ARENA_TEAM_ACCEPT                            = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_CREATE                            = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_DECLINE                           = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_DISBAND                           = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_INVITE                            = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_LEADER                            = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_LEAVE                             = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_QUERY                             = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_REMOVE                            = 0x000,  // 5.0.5 16048
    CMSG_ARENA_TEAM_ROSTER                            = 0x000,  // 5.0.5 16048
    CMSG_ATTACKSTOP                                   = 0x118E, // 5.4.0 17399
    CMSG_ATTACKSWING                                  = 0x14AF, // 5.4.0 17399
    CMSG_AUCTION_HELLO                                = 0x1627, // 5.4.0 17399
    CMSG_AUCTION_LIST_BIDDER_ITEMS                    = 0x13E6, // 5.4.0 17399
    CMSG_AUCTION_LIST_ITEMS                           = 0x13A2, // 5.4.0 17399
    CMSG_AUCTION_LIST_OWNER_ITEMS                     = 0x1272, // 5.4.0 17399
    CMSG_AUCTION_LIST_PENDING_SALES                   = 0x133A, // 5.4.0 17399
    CMSG_AUCTION_PLACE_BID                            = 0x1677, // 5.4.0 17399
    CMSG_AUCTION_REMOVE_ITEM                          = 0x17A6, // 5.4.0 17399
    CMSG_AUCTION_SELL_ITEM                            = 0x1AEB, // 5.4.0 17399
    CMSG_AUTH_SESSION                                 = 0x790,  // 5.4.0 17399
    CMSG_AUTOBANK_ITEM                                = 0x164,  // 5.4.0 17399
    CMSG_AUTOEQUIP_GROUND_ITEM                        = 0x000,  // 5.0.5 16048
    CMSG_AUTOEQUIP_ITEM                               = 0x564,  // 5.4.0 17399
    CMSG_AUTOEQUIP_ITEM_SLOT                          = 0x865,  // 5.4.0 17399
    CMSG_AUTOSTORE_BAG_ITEM                           = 0x863,  // 5.4.0 17399
    CMSG_AUTOSTORE_BANK_ITEM                          = 0x465,  // 5.4.0 17399
    CMSG_AUTOSTORE_GROUND_ITEM                        = 0x000,  // 5.0.5 16048
    CMSG_AUTOSTORE_LOOT_ITEM                          = 0x11AF, // 5.4.0 17399
    CMSG_AUTO_DECLINE_GUILD_INVITES                   = 0x1AEF, // 5.4.0 17399
    CMSG_BANKER_ACTIVATE                              = 0x166F, // 5.4.0 17399
    CMSG_BATTLEFIELD_JOIN                             = 0x1107, // 5.4.0 17399
    CMSG_BATTLEFIELD_LEAVE                            = 0x000,  // 5.0.5 16048
    CMSG_BATTLEFIELD_LIST                             = 0x10A6, // 5.4.0 17399
    CMSG_BATTLEFIELD_MGR_ENTRY_INVITE_RESPONSE        = 0x000,  // 5.0.5 16048
    CMSG_BATTLEFIELD_MGR_EXIT_REQUEST                 = 0x000,  // 5.0.5 16048
    CMSG_BATTLEFIELD_MGR_QUEUE_INVITE_RESPONSE        = 0x000,  // 5.0.5 16048
    CMSG_BATTLEFIELD_MGR_QUEUE_REQUEST                = 0x000,  // 5.0.5 16048
    CMSG_BATTLEFIELD_PORT                             = 0x16E2, // 5.4.0 17399
    CMSG_BATTLEFIELD_REQUEST_SCORE_DATA               = 0x000,  // 5.0.5 16048
    CMSG_BATTLEFIELD_STATUS                           = 0x140B, // 5.4.0 17399
    CMSG_BATTLEGROUND_PLAYER_POSITIONS                = 0x000,  // 5.0.5 16048
    CMSG_BATTLEMASTER_JOIN                            = 0x133E, // 5.4.0 17399
    CMSG_BATTLEMASTER_JOIN_ARENA                      = 0x12EA, // 5.4.0 17399
    CMSG_BATTLEMASTER_JOIN_RATED                      = 0x10A3, // 5.4.0 17399
    CMSG_BATTLE_PET_MODIFY_NAME                       = 0x124B, // 5.4.0 17399
    CMSG_BATTLE_PET_RELEASE                           = 0x1A0A, // 5.4.0 17399
    CMSG_BATTLE_PET_SET_BATTLE_SLOT                   = 0x1712, // 5.4.0 17399
    CMSG_BATTLE_PET_SET_FLAGS                         = 0x1292, // 5.4.0 17399
    CMSG_BEGIN_TRADE                                  = 0x1806, // 5.4.0 17399
    CMSG_BINDER_ACTIVATE                              = 0x1AE2, // 5.4.0 17399
    CMSG_BLACK_MARKET_HELLO                           = 0x1AFF, // 5.4.0 17399
    CMSG_BLACK_MARKET_REQUEST_ITEMS                   = 0x12A2, // 5.4.0 17399
    CMSG_BLACK_MARKET_PLACE_BID                       = 0x13FF, // 5.4.0 17399
    CMSG_BOT_DETECTED2                                = 0x000,  // 5.0.5 16048
    CMSG_BUYBACK_ITEM                                 = 0x16FE, // 5.4.0 17399
    CMSG_BUY_BANK_SLOT                                = 0x13A3, // 5.4.0 17399
    CMSG_BUY_ITEM                                     = 0x1663, // 5.4.0 17399
    CMSG_CALENDAR_ADD_EVENT                           = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_ARENA_TEAM                          = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_COMPLAIN                            = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_CONTEXT_EVENT_SIGNUP                = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_COPY_EVENT                          = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_EVENT_INVITE                        = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_EVENT_MODERATOR_STATUS              = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_EVENT_REMOVE_INVITE                 = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_EVENT_RSVP                          = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_EVENT_SIGNUP                        = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_EVENT_STATUS                        = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_GET_CALENDAR                        = 0x1B8F, // 5.4.0 17399
    CMSG_CALENDAR_GET_EVENT                           = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_GET_NUM_PENDING                     = 0x13DA, // 5.4.0 17399
    CMSG_CALENDAR_GUILD_FILTER                        = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_REMOVE_EVENT                        = 0x000,  // 5.0.5 16048
    CMSG_CALENDAR_UPDATE_EVENT                        = 0x000,  // 5.0.5 16048
    CMSG_CANCEL_AURA                                  = 0x140E, // 5.4.0 17399
    CMSG_CANCEL_AUTO_REPEAT_SPELL                     = 0x12FB, // 5.4.0 17399
    CMSG_CANCEL_CAST                                  = 0x1524, // 5.4.0 17399
    CMSG_CANCEL_CHANNELLING                           = 0x150E, // 5.4.0 17399
    CMSG_CANCEL_GROWTH_AURA                           = 0x000,  // 5.0.5 16048
    CMSG_CANCEL_MOUNT_AURA                            = 0x14AA, // 5.4.0 17399
    CMSG_CANCEL_QUEUED_SPELL                          = 0x000,  // 5.0.5 16048
    CMSG_CANCEL_TEMP_ENCHANTMENT                      = 0x1333, // 5.4.0 17399
    CMSG_CANCEL_TRADE                                 = 0x1807, // 5.4.0 17399
    CMSG_CAST_SPELL                                   = 0x1429, // 5.4.0 17399
    CMSG_CHANGEPLAYER_DIFFICULTY                      = 0x000,  // 5.0.5 16048
    CMSG_CHANGE_SEATS_ON_CONTROLLED_VEHICLE           = 0x23E,  // 5.4.0 17399
    CMSG_CHANNEL_ANNOUNCEMENTS                        = 0x1517, // 5.4.0 17399
    CMSG_CHANNEL_BAN                                  = 0x183F, // 5.4.0 17399
    CMSG_CHANNEL_DISPLAY_LIST                         = 0x15BA, // 5.4.0 17399
    CMSG_CHANNEL_INVITE                               = 0x11B2, // 5.4.0 17399
    CMSG_CHANNEL_KICK                                 = 0x111E, // 5.4.0 17399
    CMSG_CHANNEL_LIST                                 = 0x191A, // 5.4.0 17399
    CMSG_CHANNEL_MODERATOR                            = 0x19B3, // 5.4.0 17399
    CMSG_CHANNEL_MUTE                                 = 0x1510, // 5.4.0 17399
    CMSG_CHANNEL_OWNER                                = 0x199E, // 5.4.0 17399
    CMSG_CHANNEL_PASSWORD                             = 0x1895, // 5.4.0 17399
    CMSG_CHANNEL_SET_OWNER                            = 0x1435, // 5.4.0 17399
    CMSG_CHANNEL_SILENCE_ALL                          = 0x000,  // 5.0.5 16048
    CMSG_CHANNEL_SILENCE_VOICE                        = 0x000,  // 5.0.5 16048
    CMSG_CHANNEL_UNBAN                                = 0x141B, // 5.4.0 17399
    CMSG_CHANNEL_UNMODERATOR                          = 0x153C, // 5.4.0 17399
    CMSG_CHANNEL_UNMUTE                               = 0x1597, // 5.4.0 17399
    CMSG_CHANNEL_UNSILENCE_ALL                        = 0x000,  // 5.0.5 16048
    CMSG_CHANNEL_UNSILENCE_VOICE                      = 0x000,  // 5.0.5 16048
    CMSG_CHANNEL_VOICE_OFF                            = 0x000,  // 5.0.5 16048
    CMSG_CHANNEL_VOICE_ON                             = 0x000,  // 5.0.5 16048
    CMSG_CHAR_CREATE                                  = 0x17CF, // 5.4.0 17399
    CMSG_CHAR_CUSTOMIZE                               = 0x1B8E, // 5.4.0 17399
    CMSG_CHAR_DELETE                                  = 0x1783, // 5.4.0 17399
    CMSG_CHAR_ENUM                                    = 0x1B9E, // 5.4.0 17399
    CMSG_CHAR_FACTION_OR_RACE_CHANGE                  = 0x1786, // 5.4.0 17399
    CMSG_CHAR_RENAME                                  = 0x1AD6, // 5.4.0 17399
    CMSG_CHAT_FILTERED                                = 0x000,  // 5.0.5 16048
    CMSG_CHAT_IGNORED                                 = 0x181E, // 5.4.0 17399
    CMSG_CLEAR_CHANNEL_WATCH                          = 0x000,  // 5.0.5 16048
    CMSG_CLEAR_RAID_MARKER                            = 0x1101, // 5.4.0 17399
    CMSG_CLEAR_TRADE_ITEM                             = 0x1500, // 5.4.0 17399
    CMSG_COMMENTATOR_ENABLE                           = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_ENTER_INSTANCE                   = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_EXIT_INSTANCE                    = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_GET_MAP_INFO                     = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_GET_PARTY_INFO                   = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_GET_PLAYER_INFO                  = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_INSTANCE_COMMAND                 = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_SKIRMISH_QUEUE_COMMAND           = 0x000,  // 5.0.5 16048
    CMSG_COMMENTATOR_START_WARGAME                    = 0x000,  // 5.0.5 16048
    CMSG_COMPLAIN                                     = 0x13C7, // 5.4.0 17399
    CMSG_COMPLETE_CINEMATIC                           = 0x12F8, // 5.4.0 17399
    CMSG_COMPLETE_MOVIE                               = 0x132A, // 5.4.0 17399
    CMSG_CONFIRM_RESPEC_WIPE                          = 0x142E, // 5.4.0 17399
    CMSG_CONNECT_TO_FAILED                            = 0x000,  // 5.0.5 16048
    CMSG_CONTACT_LIST                                 = 0x1351, // 5.4.0 17399
    CMSG_CORPSE_MAP_POSITION_QUERY                    = 0x1313, // 5.4.0 17399
    CMSG_CREATURE_QUERY                               = 0x1585, // 5.4.0 17399
    CMSG_DANCE_QUERY                                  = 0x000,  // 5.0.5 16048
    CMSG_DECLINE_CHANNEL_INVITE                       = 0x1C16, // 5.4.0 17399
    CMSG_DEL_FRIEND                                   = 0x1AD8, // 5.4.0 17399
    CMSG_DEL_IGNORE                                   = 0x1604, // 5.4.0 17399
    CMSG_DEL_VOICE_IGNORE                             = 0x000,  // 5.0.5 16048
    CMSG_DESTROY_ITEM                                 = 0x1401, // 5.4.0 17399
    CMSG_DISMISS_CONTROLLED_VEHICLE                   = 0x72A,  // 5.4.0 17399
    CMSG_DISMISS_CRITTER                              = 0x000,  // 5.0.5 16048
    CMSG_DUEL_RESPONSE                                = 0x13FE, // 5.4.0 17399
    CMSG_DUEL_PROPOSED                                = 0x129B, // 5.4.0 17399
    CMSG_LFD_LOCK_INFO_REQUEST                        = 0x1A13, // 5.4.0 17399
    CMSG_EJECT_PASSENGER                              = 0x1423, // 5.4.0 17399
    CMSG_EMOTE                                        = 0x1689, // 5.4.0 17399
    CMSG_ENABLETAXI                                   = 0x000,  // 5.0.5 16048
    CMSG_ENABLE_NAGLE                                 = 0x000,  // 5.0.5 16048
    CMSG_EQUIPMENT_SET_SAVE                           = 0x127A, // 5.4.0 17399
    CMSG_EQUIPMENT_SET_USE                            = 0x064,  // 5.4.0 17399
    CMSG_EQUIPMENT_SET_DELETE                         = 0x16B6, // 5.4.0 17399
    CMSG_FAR_SIGHT                                    = 0x167B, // 5.4.0 17399
    CMSG_FORCE_MOVE_ROOT_ACK                          = 0x000,  // Deprecated
    CMSG_FORCE_MOVE_UNROOT_ACK                        = 0x000,  // Deprecated
    CMSG_GAMEOBJECT_QUERY                             = 0x15A4, // 5.4.0 17399
    CMSG_GAMEOBJECT_REPORT_USE                        = 0x1367, // 5.4.0 17399 0x1367 or 0x1B36
    CMSG_GAMEOBJECT_USE                               = 0x1B36, // 5.4.0 17399 0x1367 or 0x1B36
    CMSG_GAMESPEED_SET                                = 0x000,  // 5.0.5 16048
    CMSG_GAMETIME_SET                                 = 0x000,  // 5.0.5 16048
    CMSG_GETDEATHBINDZONE                             = 0x000,  // 5.0.5 16048
    CMSG_GET_MAIL_LIST                                = 0x1ABB, // 5.4.0 17399
    CMSG_GET_MIRRORIMAGE_DATA                         = 0x18AB, // 5.4.0 17399
    CMSG_GHOST                                        = 0x000,  // 5.0.5 16048
    CMSG_GMRESPONSE_RESOLVE                           = 0x160E, // 5.4.0 17399
    CMSG_GMSURVEY_SUBMIT                              = 0x000,  // 5.0.5 16048
    CMSG_GMTICKET_CREATE                              = 0x17DA, // 5.4.0 17399
    CMSG_GMTICKET_DELETETICKET                        = 0x1206, // 5.4.0 17399
    CMSG_GMTICKET_GETTICKET                           = 0x1B46, // 5.4.0 17399
    CMSG_GMTICKET_GETWEBTICKET                        = 0x1ACA, // 5.4.0 17399
    CMSG_GMTICKET_SYSTEMSTATUS                        = 0x000,  // 5.4.0 17399
    CMSG_GMTICKET_UPDATETEXT                          = 0x178B, // 5.4.0 17399
    CMSG_GM_INVIS                                     = 0x000,  // 5.0.5 16048
    CMSG_GM_NUKE                                      = 0x000,  // 5.0.5 16048
    CMSG_GM_REPORT_LAG                                = 0x000,  // 5.0.5 16048
    CMSG_GM_SET_SECURITY_GROUP                        = 0x000,  // 5.0.5 16048
    CMSG_GOSSIP_HELLO                                 = 0x1A3F, // 5.4.0 17399
    CMSG_GOSSIP_SELECT_OPTION                         = 0x136B, // 5.4.0 17399
    CMSG_GRANT_LEVEL                                  = 0x000,  // 5.0.5 16048
    CMSG_GROUP_ASSISTANT_LEADER                       = 0x12C2, // 5.4.0 17399
    CMSG_GROUP_ASSIGNMENT                             = 0x1E03, // 5.4.0 17399
    CMSG_GROUP_CANCEL                                 = 0x000,  // 5.0.5 16048
    CMSG_GROUP_CHANGE_SUB_GROUP                       = 0x1357, // 5.4.0 17399
    CMSG_GROUP_DISBAND                                = 0x165E, // 5.4.0 17399
    CMSG_GROUP_INVITE                                 = 0x121E, // 5.4.0 17399
    CMSG_GROUP_INVITE_RESPONSE                        = 0x1B0A, // 5.4.0 17399
    CMSG_GROUP_RAID_CONVERT                           = 0x161B, // 5.4.0 17399
    CMSG_GROUP_REQUEST_JOIN_UPDATES                   = 0x139B, // 5.4.0 17399
    CMSG_GROUP_SET_LEADER                             = 0x17DF, // 5.4.0 17399
    CMSG_GROUP_SET_ROLES                              = 0x1AC7, // 5.4.0 17399
    CMSG_GROUP_SWAP_SUB_GROUP                         = 0x000,  // 5.0.5 16048
    CMSG_GROUP_UNINVITE                               = 0x000,  // 5.0.5 16048
    CMSG_GROUP_UNINVITE_GUID                          = 0x1BCF, // 5.4.0 17399
    CMSG_GUILD_ACCEPT                                 = 0x17C2, // 5.4.0 17399
    CMSG_GUILD_ACHIEVEMENT_MEMBERS                    = 0x000,  // 5.0.5 16048
    CMSG_GUILD_ACHIEVEMENT_PROGRESS_QUERY             = 0x215,  // 5.4.0 17399
    CMSG_GUILD_ADD_RANK                               = 0xA19,  // 5.4.0 17399
    CMSG_GUILD_ASSIGN_MEMBER_RANK                     = 0x20C,  // 5.4.0 17399
    CMSG_GUILD_BANKER_ACTIVATE                        = 0x1776, // 5.4.0 17399
    CMSG_GUILD_BANK_BUY_TAB                           = 0x1A67, // 5.4.0 17399
    CMSG_GUILD_BANK_DEPOSIT_MONEY                     = 0x1726, // 5.4.0 17399
    CMSG_GUILD_BANK_LOG_QUERY                         = 0x32C,  // 5.4.0 17399
    CMSG_GUILD_BANK_MONEY_WITHDRAWN_QUERY             = 0x351,  // 5.4.0 17399
    CMSG_GUILD_BANK_NOTE                              = 0x000,  // 5.0.5 16048
    CMSG_GUILD_BANK_QUERY_TAB                         = 0x17BB, // 5.4.0 17399
    CMSG_GUILD_BANK_QUERY_TEXT                        = 0x251,  // 5.4.0 17399
    CMSG_GUILD_BANK_SWAP_ITEMS                        = 0x173B, // 5.4.0 17399
    CMSG_GUILD_BANK_UPDATE_TAB                        = 0x173F, // 5.4.0 17399
    CMSG_GUILD_BANK_WITHDRAW_MONEY                    = 0x16FB, // 5.4.0 17399
    CMSG_GUILD_CHANGE_NAME_REQUEST                    = 0x000,  // 5.0.5 16048
    CMSG_GUILD_DECLINE                                = 0xA20,  // 5.4.0 17399
    CMSG_GUILD_DEL_RANK                               = 0xA35,  // 5.4.0 17399
    CMSG_GUILD_DISBAND                                = 0x334,  // 5.4.0 17399
    CMSG_GUILD_EVENT_LOG_QUERY                        = 0x238,  // 5.4.0 17399
    CMSG_GUILD_INFO                                   = 0x000,  // 5.0.5 16048
    CMSG_GUILD_INFO_TEXT                              = 0x248,  // 5.4.0 17399
    CMSG_GUILD_INVITE                                 = 0x1B1A, // 5.4.0 17399
    CMSG_GUILD_LEADER                                 = 0x1316, // 5.4.0 17399
    CMSG_GUILD_LEAVE                                  = 0x338,  // 5.4.0 17399
    CMSG_GUILD_MEMBER_SEND_SOR_REQUEST                = 0x000,  // 5.0.5 16048
    CMSG_GUILD_MOTD                                   = 0x24C,  // 5.4.0 17399
    CMSG_GUILD_NEWS_UPDATE_STICKY                     = 0x000,  // 5.0.5 16048
    CMSG_GUILD_PERMISSIONS                            = 0x264,  // 5.4.0 17399
    CMSG_GUILD_QUERY                                  = 0x17C3, // 5.4.0 17399
    CMSG_GUILD_QUERY_NEWS                             = 0x350,  // 5.4.0 17399
    CMSG_GUILD_QUERY_RANKS                            = 0xA1D,  // 5.4.0 17399
    CMSG_GUILD_REMOVE                                 = 0xB0C,  // 5.4.0 17399
    CMSG_GUILD_REPLACE_GUILD_MASTER                   = 0x000,  // 5.0.5 16048
    CMSG_GUILD_REQUEST_CHALLENGE_UPDATE               = 0xA78,  // 5.4.0 17399
    CMSG_GUILD_REQUEST_MAX_DAILY_XP                   = 0x000,  // 5.0.5 16048
    CMSG_GUILD_REQUEST_PARTY_STATE                    = 0x1885, // 5.4.0 17399
    CMSG_GUILD_ROSTER                                 = 0x315,  // 5.4.0 17399
    CMSG_GUILD_SET_ACHIEVEMENT_TRACKING               = 0x255,  // 5.4.0 17399
    CMSG_GUILD_SET_GUILD_MASTER                       = 0x000,  // 5.0.5 16048
    CMSG_GUILD_SET_NOTE                               = 0x369,  // 5.4.0 17399
    CMSG_GUILD_SET_RANK_PERMISSIONS                   = 0xA40,  // 5.4.0 17399
    CMSG_GUILD_SWITCH_RANK                            = 0xA3C,  // 5.4.0 17399
    CMSG_HEARTH_AND_RESURRECT                         = 0x000,  // 5.0.5 16048
    CMSG_IGNORE_TRADE                                 = 0x1089, // 5.4.0 17399
    CMSG_INITIATE_TRADE                               = 0x108E, // 5.4.0 17399
    CMSG_INSPECT                                      = 0x167E, // 5.4.0 17399
    CMSG_INSPECT_HONOR_STATS                          = 0x14AC, // 5.4.0 17399
    CMSG_INSTANCE_LOCK_WARNING_RESPONSE               = 0x000,  // 5.0.5 16048
    CMSG_ITEM_REFUND                                  = 0x136F, // 5.4.0 17399
    CMSG_ITEM_REFUND_INFO                             = 0x1A76, // 5.4.0 17399
    CMSG_ITEM_TEXT_QUERY                              = 0x1F58, // 5.4.0 17399
    CMSG_JOIN_CHANNEL                                 = 0x1C14, // 5.4.0 17399
    CMSG_KEEP_ALIVE                                   = 0x131A, // 5.4.0 17399
    CMSG_LEARN_PET_SPECIALIZATION_GROUP               = 0x10AE, // 5.4.0 17399
    CMSG_LEARN_TALENTS                                = 0x1901, // 5.4.0 17399
    CMSG_LEAVE_BATTLEFIELD                            = 0x100B, // 5.4.0 17399
    CMSG_LEAVE_CHANNEL                                = 0x1131, // 5.4.0 17399
    CMSG_LFG_GET_PLAYER_INFO                          = 0x000,  // 5.0.5 16048
    CMSG_LFG_GET_STATUS                               = 0x1B1F, // 5.4.0 17399
    CMSG_LFG_JOIN                                     = 0x1B57, // 5.4.0 17399
    CMSG_LFG_LEAVE                                    = 0x17C6, // 5.4.0 17399
    CMSG_LFG_PARTY_LOCK_INFO_REQUEST                  = 0x000,  // 5.0.5 16048
    CMSG_LFG_PROPOSAL_RESULT                          = 0x1A07, // 5.4.0 17399
    CMSG_LFG_SET_BOOT_VOTE                            = 0x128E, // 5.4.0 17399
    CMSG_LFG_SET_COMMENT                              = 0x17DB, // 5.4.0 17399
    CMSG_LFG_SET_ROLES                                = 0x169B, // 5.4.0 17399
    CMSG_LFG_TELEPORT                                 = 0x1716, // 5.4.0 17399
    CMSG_LF_GUILD_ADD_RECRUIT                         = 0x1647, // 5.4.0 17399
    CMSG_LF_GUILD_BROWSE                              = 0x1797, // 5.4.0 17399
    CMSG_LF_GUILD_DECLINE_RECRUIT                     = 0xA74,  // 5.4.0 17399
    CMSG_LF_GUILD_GET_APPLICATIONS                    = 0x328,  // 5.4.0 17399
    CMSG_LF_GUILD_GET_RECRUITS                        = 0x24D,  // 5.4.0 17399
    CMSG_LF_GUILD_POST_REQUEST                        = 0x000,  // 5.4.0 17399
    CMSG_LF_GUILD_REMOVE_RECRUIT                      = 0x344,  // 5.4.0 17399
    CMSG_LF_GUILD_SET_GUILD_POST                      = 0x1246, // 5.4.0 17399
    CMSG_LIST_INVENTORY                               = 0x1762, // 5.4.0 17399
    CMSG_LIST_PETS                                    = 0x12B2, // 5.4.0 17399
    CMSG_LOAD_SCREEN                                  = 0x160B, // 5.4.0 17399
    CMSG_LOGOUT_CANCEL                                = 0x1B62, // 5.4.0 17399
    CMSG_LOGOUT_REQUEST                               = 0x16E7, // 5.4.0 17399
    CMSG_LOG_DISCONNECT                               = 0x380,  // 5.4.0 17399
    CMSG_LOOT                                         = 0x18AF, // 5.4.0 17399
    CMSG_LOOT_CURRENCY                                = 0x000,  // 5.0.5 16048
    CMSG_LOOT_MASTER_GIVE                             = 0x1587, // 5.4.0 17399
    CMSG_LOOT_METHOD                                  = 0x1352, // 5.4.0 17399
    CMSG_LOOT_MONEY                                   = 0x1080, // 5.4.0 17399
    CMSG_LOOT_RELEASE                                 = 0x1022, // 5.4.0 17399
    CMSG_LOOT_ROLL                                    = 0x1405, // 5.4.0 17399
    CMSG_LOOT_MASTER_ASK_FOR_ROLL                     = 0x182A, // 5.4.0 17399
    CMSG_MAIL_CREATE_TEXT_ITEM                        = 0x1B2A, // 5.4.0 17399
    CMSG_MAIL_DELETE                                  = 0x1083, // 5.4.0 17399
    CMSG_MAIL_MARK_AS_READ                            = 0x17F2, // 5.4.0 17399
    CMSG_MAIL_RETURN_TO_SENDER                        = 0x1486, // 5.4.0 17399
    CMSG_MAIL_TAKE_ITEM                               = 0x1B37, // 5.4.0 17399
    CMSG_MAIL_TAKE_MONEY                              = 0x16EE, // 5.4.0 17399
    CMSG_MANEUVER_START                               = 0x1696, // 5.4.0 17399
    CMSG_MEETINGSTONE_INFO                            = 0x000,  // 5.0.5 16048
    CMSG_MESSAGECHAT_ADDON_BATTLEGROUND               = 0x10B6, // 5.4.0 17399
    CMSG_MESSAGECHAT_ADDON_GUILD                      = 0x149A, // 5.4.0 17399
    CMSG_MESSAGECHAT_ADDON_OFFICER                    = 0x1990, // 5.4.0 17399
    CMSG_MESSAGECHAT_ADDON_PARTY                      = 0x11B6, // 5.4.0 17399
    CMSG_MESSAGECHAT_ADDON_RAID                       = 0x1439, // 5.4.0 17399
    CMSG_MESSAGECHAT_ADDON_WHISPER                    = 0x1532, // 5.4.0 17399
    CMSG_MESSAGECHAT_AFK                              = 0x15B9, // 5.4.0 17399
    CMSG_MESSAGECHAT_BATTLEGROUND                     = 0x159D, // 5.4.0 17399
    CMSG_MESSAGECHAT_CHANNEL                          = 0x1134, // 5.4.0 17399
    CMSG_MESSAGECHAT_DND                              = 0x19BB, // 5.4.0 17399
    CMSG_MESSAGECHAT_EMOTE                            = 0x1C1F, // 5.4.0 17399
    CMSG_MESSAGECHAT_GUILD                            = 0x109F, // 5.4.0 17399
    CMSG_MESSAGECHAT_OFFICER                          = 0x159C, // 5.4.0 17399
    CMSG_MESSAGECHAT_PARTY                            = 0x15B0, // 5.4.0 17399
    CMSG_MESSAGECHAT_RAID                             = 0x1410, // 5.4.0 17399
    CMSG_MESSAGECHAT_RAID_WARNING                     = 0x101E, // 5.4.0 17399
    CMSG_MESSAGECHAT_SAY                              = 0x10BE, // 5.4.0 17399
    CMSG_MESSAGECHAT_WHISPER                          = 0x19B6, // 5.4.0 17399
    CMSG_MESSAGECHAT_YELL                             = 0x1015, // 5.4.0 17399
    CMSG_MINIGAME_MOVE                                = 0x000,  // 5.0.5 16048
    CMSG_MINIMAP_PING                                 = 0x1283, // 5.4.0 17399
    CMSG_MOUNTSPECIAL_ANIM                            = 0x000,  // 5.0.5 16048
    CMSG_MOVE_CHARM_TELEPORT_CHEAT                    = 0x000,  // 5.0.5 16048
    CMSG_MOVE_CHNG_TRANSPORT                          = 0x000,  // 5.0.5 16048
    CMSG_MOVE_ENABLE_SWIM_TO_FLY_TRANS_ACK            = 0x000,  // 5.0.5 16048
    CMSG_MOVE_NOT_ACTIVE_MOVER                        = 0x000,  // 5.0.5 16048
    CMSG_MOVE_SET_RELATIVE_POSITION                   = 0x000,  // 5.0.5 16048
    CMSG_MOVE_SET_VEHICLE_REC_ID_ACK                  = 0x000,  // 5.0.5 16048
    CMSG_MOVE_SPLINE_DONE                             = 0x23A,  // 5.4.0 17399
    CMSG_MOVE_TIME_SKIPPED                            = 0x313,  // 5.4.0 17399
    CMSG_MOVE_TOGGLE_COLLISION_ACK                    = 0x000,  // 5.0.5 16048
    CMSG_NAME_QUERY                                   = 0x16DB, // 5.4.0 17399
    CMSG_NEW_SPELL_SLOT                               = 0x000,  // 5.0.5 16048
    CMSG_NEXT_CINEMATIC_CAMERA                        = 0x17C4, // 5.4.0 17399
    CMSG_NPC_TEXT_QUERY                               = 0x108B, // 5.4.0 17399
    CMSG_OBJECT_UPDATE_FAILED                         = 0x1926, // 5.4.0 17399
    CMSG_OBJECT_UPDATE_RESCUED                        = 0x1526, // 5.4.0 17399
    CMSG_OFFER_PETITION                               = 0x170B, // 5.4.0 17399
    CMSG_OPENING_CINEMATIC                            = 0x000,  // 5.0.5 16048
    CMSG_OPEN_ITEM                                    = 0x1A01, // 5.4.0 17399
    CMSG_OPT_OUT_OF_LOOT                              = 0x1277, // 5.4.0 17399
    CMSG_PAGE_TEXT_QUERY                              = 0x1082, // 5.4.0 17399
    CMSG_PETITION_BUY                                 = 0x13AE, // 5.4.0 17399
    CMSG_PETITION_DECLINE                             = 0x1A3B, // 5.4.0 17399
    CMSG_PETITION_QUERY                               = 0x1404, // 5.4.0 17399
    CMSG_PETITION_RENAME                              = 0x1242, // 5.4.0 17399
    CMSG_PETITION_SHOWLIST                            = 0x000,  // 5.0.5 16048
    CMSG_PETITION_SHOW_SIGNATURES                     = 0x1B72, // 5.4.0 17399
    CMSG_PETITION_SIGN                                = 0x17F3, // 5.4.0 17399
    CMSG_PET_ABANDON                                  = 0x1222, // 5.4.0 17399
    CMSG_PET_ACTION                                   = 0x1722, // 5.4.0 17399
    CMSG_PET_BATTLE_INPUT                             = 0x1302, // 5.4.0 17399
    CMSG_PET_BATTLE_REQUEST_WILD                      = 0x102D, // 5.4.0 17399
    CMSG_PET_CANCEL_AURA                              = 0x17FA, // 5.4.0 17399
    CMSG_PET_CAST_SPELL                               = 0x1006, // 5.4.0 17399
    CMSG_PET_NAME_QUERY                               = 0x1428, // 5.4.0 17399
    CMSG_PET_RENAME                                   = 0x1B0F, // 5.4.0 17399
    CMSG_PET_SET_ACTION                               = 0x166B, // 5.4.0 17399
    CMSG_PET_STOP_ATTACK                              = 0x13AF, // 5.4.0 17399
    CMSG_PING                                         = 0x0784, // 5.4.0 17399
    CMSG_PLAYED_TIME                                  = 0x10AA, // 5.4.0 17399
    CMSG_PLAYER_DIFFICULTY_CHANGE                     = 0x000,  // 5.0.5 16048
    CMSG_PLAYER_LOGIN                                 = 0x1BC7, // 5.4.0 17399
    CMSG_PLAYER_LOGOUT                                = 0x336,  // 5.4.0 17399
    CMSG_PLAYER_VEHICLE_ENTER                         = 0x15A1, // 5.4.0 17399
    CMSG_PLAY_DANCE                                   = 0x000,  // 5.0.5 16048
    CMSG_PUSHQUESTTOPARTY                             = 0x12AA, // 5.4.0 17399
    CMSG_PVP_LOG_DATA                                 = 0x15AD, // 5.4.0 17399
    CMSG_QUERY_BATTLEFIELD_STATE                      = 0x10A8, // 5.4.0 17399
    CMSG_QUERY_BATTLE_PET_NAME                        = 0x11AC, // 5.4.0 17399
    CMSG_QUERY_GUILD_MEMBERS_FOR_RECIPE               = 0x000,  // 5.0.5 16048
    CMSG_QUERY_GUILD_MEMBER_RECIPES                   = 0x000,  // 5.0.5 16048
    CMSG_QUERY_GUILD_RECIPES                          = 0xA6C,  // 5.4.0 17399
    CMSG_QUERY_GUILD_REWARDS                          = 0x1402, // 5.4.0 17399
    CMSG_QUERY_GUILD_XP                               = 0x250,  // 5.4.0 17399
    CMSG_QUERY_INSPECT_ACHIEVEMENTS                   = 0x1B22, // 5.4.0 17399
    CMSG_QUERY_QUESTS_COMPLETED                       = 0x000,  // 5.0.5 16048 Deprecated, Sure ?
    CMSG_QUERY_TIME                                   = 0x17BA, // 5.4.0 17399
    CMSG_QUESTGIVER_ACCEPT_QUEST                      = 0x12B6, // 5.4.0 17399
    CMSG_QUESTGIVER_CHOOSE_REWARD                     = 0x1A37, // 5.4.0 17399
    CMSG_QUESTGIVER_COMPLETE_QUEST                    = 0x1AB3, // 5.4.0 17399
    CMSG_QUESTGIVER_HELLO                             = 0x163F, // 5.4.0 17399
    CMSG_QUESTGIVER_QUERY_QUEST                       = 0x1377, // 5.4.0 17399
    CMSG_QUESTGIVER_REQUEST_REWARD                    = 0x1223, // 5.4.0 17399
    CMSG_QUESTGIVER_STATUS_MULTIPLE_QUERY             = 0x132F, // 5.4.0 17399
    CMSG_QUESTGIVER_STATUS_QUERY                      = 0x17AE, // 5.4.0 17399
    CMSG_QUESTLOG_REMOVE_QUEST                        = 0x17AF, // 5.4.0 17399
    CMSG_QUEST_CONFIRM_ACCEPT                         = 0x1237, // 5.4.0 17399
    CMSG_QUEST_NPC_QUERY                              = 0x1287, // 5.4.0 17399
    CMSG_QUEST_POI_QUERY                              = 0x1084, // 5.4.0 17399
    CMSG_QUEST_QUERY                                  = 0x1507, // 5.4.0 17399
    CMSG_RAID_LEADER_READY_CHECK                      = 0x1307, // 5.4.0 17399
    CMSG_RAID_CONFIRM_READY_CHECK                     = 0x124E, // 5.4.0 17399
    CMSG_RAID_TARGET_UPDATE                           = 0x1E16, // 5.4.0 17399
    CMSG_RANDOM_ROLL                                  = 0x1A9B, // 5.4.0 17399
    CMSG_RANDOMIZE_CHAR_NAME                          = 0x000,  // 5.0.5 16048
    CMSG_READY_FOR_ACCOUNT_DATA_TIMES                 = 0x1A0E, // 5.4.0 17399
    CMSG_READ_ITEM                                    = 0x1A95, // 5.4.0 17399
    CMSG_REALM_NAME_QUERY                             = 0x13D7, // 5.4.0 17399
    CMSG_REALM_SPLIT                                  = 0x129F, // 5.4.0 17399
    CMSG_RECLAIM_CORPSE                               = 0x1AAB, // 5.4.0 17399
    CMSG_REDIRECTION_AUTH_PROOF                       = 0x000,  // 5.0.5 16048
    CMSG_REFORGE_ITEM                                 = 0x1809, // 5.4.0 17399
    CMSG_REORDER_CHARACTERS                           = 0x171F, // 5.4.0 17399
    CMSG_REPAIR_ITEM                                  = 0x1B7B, // 5.4.0 17399
    CMSG_REPOP_REQUEST                                = 0x163A, // 5.4.0 17399
    CMSG_REPORT_BUG                                   = 0x1217, // 5.4.0 17399
    CMSG_REPORT_PVP_AFK                               = 0x1327, // 5.4.0 17399
    CMSG_REPORT_SUGGESTION                            = 0x1A8A, // 5.4.0 17399
    CMSG_REQUEST_ACCOUNT_DATA                         = 0x1686, // 5.4.0 17399
    CMSG_REQUEST_BATTLEPET_JOURNAL                    = 0x1203, // 5.4.0 17399
    CMSG_REQUEST_CATEGORY_COOLDOWNS                   = 0x1183, // 5.4.0 17399
    CMSG_REQUEST_CEMETERY_LIST                        = 0x18AE, // 5.4.0 17399
    CMSG_REQUEST_FORCED_REACTIONS                     = 0x14A0, // 5.4.0 17399
    CMSG_REQUEST_GM_TICKET                            = 0x134F, // 5.4.0 17399
    CMSG_REQUEST_HOTFIX                               = 0x1A8B, // 5.4.0 17399
    CMSG_REQUEST_INSPECT_RATED_BG_STATS               = 0x1757, // 5.4.0 17399
    CMSG_REQUEST_PARTY_MEMBER_STATS                   = 0x16CF, // 5.4.0 17399
    CMSG_REQUEST_PET_INFO                             = 0x000,  // 5.0.5 16048
    CMSG_REQUEST_PVP_OPTIONS_ENABLED                  = 0x000,  // 5.0.5 16048
    CMSG_REQUEST_PVP_REWARDS                          = 0x1B16, // 5.4.0 17399
    CMSG_REQUEST_RAID_INFO                            = 0x1612, // 5.4.0 17399
    CMSG_REQUEST_RATED_BG_INFO                        = 0x000,  // 5.0.5 16048
    CMSG_REQUEST_RATED_BG_STATS                       = 0x13C6, // 5.4.0 17399
    CMSG_REQUEST_RESEARCH_HISTORY                     = 0x5162, // 5.4.0 17399
    CMSG_REQUEST_VEHICLE_EXIT                         = 0x1528, // 5.4.0 17399
    CMSG_REQUEST_VEHICLE_NEXT_SEAT                    = 0x000,  // 5.0.5 16048
    CMSG_REQUEST_VEHICLE_PREV_SEAT                    = 0x000,  // 5.0.5 16048
    CMSG_REQUEST_VEHICLE_SWITCH_SEAT                  = 0x14AB, // 5.4.0 17399
    CMSG_RESET_CHALLENGE_MODE                         = 0x110E, // 5.4.0 17399
    CMSG_RESET_FACTION_CHEAT                          = 0x000,  // 5.0.5 16048
    CMSG_RESET_INSTANCES                              = 0x1383, // 5.4.0 17399
    CMSG_RESURRECT_RESPONSE                           = 0x128F, // 5.4.0 17399
    CMSG_RETURN_TO_GRAVEYARD                          = 0x122A, // 5.4.0 17399
    CMSG_ROLE_POLL_BEGIN                              = 0x1A1E, // 5.4.0 17399
    CMSG_SAVE_CUF_PROFILES                            = 0x158D, // 5.4.0 17399
    CMSG_SAVE_PLAYER                                  = 0x000,  // 5.0.5 16048
    CMSG_SEARCH_LFG_JOIN                              = 0x000,  // 5.0.5 16048
    CMSG_SEARCH_LFG_LEAVE                             = 0x000,  // 5.0.5 16048
    CMSG_SELECT_FACTION                               = 0x1109, // 5.4.0 17399
    CMSG_SELF_RES                                     = 0x1266, // 5.4.0 17399
    CMSG_SELL_ITEM                                    = 0x12E7, // 5.4.0 17399
    CMSG_SEND_MAIL                                    = 0x1E0E, // 5.4.0 17399
    CMSG_SEND_SOR_REQUEST_VIA_ADDRESS                 = 0x1E0B, // 5.4.0 17399
    CMSG_SEND_SOR_REQUEST_VIA_BNET_ACCOUNT_ID         = 0x000,  // 5.0.5 16048
    CMSG_SERVERTIME                                   = 0x000,  // 5.0.5 16048
    CMSG_SETDEATHBINDPOINT                            = 0x000,  // 5.0.5 16048
    CMSG_SETSHEATHED                                  = 0x17E2, // 5.4.0 17399
    CMSG_SET_ACTIONBAR_TOGGLES                        = 0x162B, // 5.4.0 17399
    CMSG_SET_ACTION_BUTTON                            = 0x129E, // 5.4.0 17399
    CMSG_SET_ACTIVE_MOVER                             = 0xB23,  // 5.4.0 17399
    CMSG_SET_ACTIVE_VOICE_CHANNEL                     = 0x000,  // Voice system not used
    CMSG_SET_ALLOW_LOW_LEVEL_RAID1                    = 0x000,  // 5.0.5 16048
    CMSG_SET_ALLOW_LOW_LEVEL_RAID2                    = 0x000,  // 5.0.5 16048
    CMSG_SET_CHANNEL_WATCH                            = 0x000,  // 5.0.5 16048
    CMSG_SET_CONTACT_NOTES                            = 0x1EA4, // 5.4.0 17399
    CMSG_SET_CURRENCY_FLAGS                           = 0x112B, // 5.4.0 17399
    CMSG_SET_DUNGEON_DIFFICULTY                       = 0x1E17, // 5.4.0 17399
    CMSG_SET_EVERYONE_IS_ASSISTANT                    = 0x1386, // 5.4.0 17399
    CMSG_SET_FACTION_ATWAR                            = 0x1B23, // 5.4.0 17399
    CMSG_UNSET_FACTION_ATWAR                          = 0x12FE, // 5.4.0 17399
    CMSG_SET_FACTION_CHEAT                            = 0x000,  // 5.0.5 16048
    CMSG_SET_FACTION_INACTIVE                         = 0x1ABF, // 5.4.0 17399
    CMSG_SET_LOOT_SPECIALIZATION                      = 0x1AFB, // 5.4.0 17399
    CMSG_SET_GUILD_BANK_TEXT                          = 0x231,  // 5.4.0 17399
    CMSG_SET_LFG_COMMENT                              = 0x000,  // 5.0.5 16048
    CMSG_SET_PET_SLOT                                 = 0x140F, // 5.4.0 17399
    CMSG_SET_PLAYER_DECLINED_NAMES                    = 0x000,  // 5.0.5 16048
    CMSG_SET_PREFERED_CEMETERY                        = 0x000,  // 5.0.5 16048
    CMSG_SET_RELATIVE_POSITION                        = 0x000,  // 5.0.5 16048
    CMSG_SET_SAVED_INSTANCE_EXTEND                    = 0x000,  // 5.0.5 16048
    CMSG_SET_SELECTION                                = 0x1B76, // 5.4.0 17399
    CMSG_SET_SKILL_CHEAT                              = 0x000,  // 5.0.5 16048
    CMSG_SET_SPECIALIZATION                           = 0x1104, // 5.4.0 17399
    CMSG_SET_TAXI_BENCHMARK_MODE                      = 0x000,  // 5.0.5 16048
    CMSG_SET_TITLE                                    = 0x11A6, // 5.4.0 17399
    CMSG_SET_TRADE_CURRENCY                           = 0x000,  // 5.0.5 16048
    CMSG_SET_TRADE_GOLD                               = 0x1187, // 5.4.0 17399
    CMSG_SET_TRADE_ITEM                               = 0x1425, // 5.4.0 17399
    CMSG_SET_VEHICLE_REC_ID_ACK                       = 0x000,  // 5.0.5 16048
    CMSG_SET_WATCHED_FACTION                          = 0x163E, // 5.4.0 17399
    CMSG_SHOW_ACCOUNT_ACHIEVEMENT                     = 0x15AE, // 5.4.0 17399
    CMSG_SHOWING_CLOAK                                = 0x16EA, // 5.4.0 17399
    CMSG_SHOWING_HELM                                 = 0x1A7B, // 5.4.0 17399
    CMSG_SPELLCLICK                                   = 0x1676, // 5.4.0 17399
    CMSG_SOCKET_GEMS                                  = 0x1B77, // 5.4.0 17399
    CMSG_SPIRIT_HEALER_ACTIVATE                       = 0x1B6F, // 5.4.0 17399
    CMSG_SPLIT_ITEM                                   = 0x161,  // 5.4.0 17399
    CMSG_STANDSTATECHANGE                             = 0x1181, // 5.4.0 17399
    CMSG_START_QUEST                                  = 0x000,  // 5.0.5 16048
    CMSG_STOP_DANCE                                   = 0x000,  // 5.0.5 16048
    CMSG_STORE_LOOT_IN_SLOT                           = 0x000,  // 5.0.5 16048
    CMSG_SUBMIT_BUG                                   = 0x000,  // 5.0.5 16048
    CMSG_SUBMIT_COMPLAIN                              = 0x000,  // 5.0.5 16048 Deprecated ? 0x2512 4.3.4
    CMSG_SUGGESTION_SUBMIT                            = 0x000,  // 5.0.5 16048
    CMSG_SUMMON_BATTLEPET_COMPANION                   = 0x1A1F, // 5.4.0 17399
    CMSG_SUMMON_RESPONSE                              = 0x138F, // 5.4.0 17399
    CMSG_SUSPEND_TOKEN                                = 0x000,  // 5.0.5 16048 Unused
    CMSG_SAVE_GUILD_EMBLEM                            = 0x150C, // 5.4.0 17399
    CMSG_SWAP_INV_ITEM                                = 0x445,  // 5.4.0 17399
    CMSG_SWAP_ITEM                                    = 0x440,  // 5.4.0 17399
    CMSG_SYNC_DANCE                                   = 0x000,  // 5.0.5 16048
    CMSG_TAXICLEARALLNODES                            = 0x000,  // 5.0.5 16048
    CMSG_TAXIENABLEALLNODES                           = 0x000,  // 5.0.5 16048
    CMSG_TAXINODE_STATUS_QUERY                        = 0x13A7, // 5.4.0 17399
    CMSG_TAXIQUERYAVAILABLENODES                      = 0x12EE, // 5.4.0 17399
    CMSG_TAXISHOWNODES                                = 0x000,  // 5.0.5 16048
    CMSG_TELEPORT_TO_UNIT                             = 0x000,  // 5.0.5 16048
    CMSG_TEXT_EMOTE                                   = 0x1723, // 5.4.0 17399
    CMSG_TIME_ADJUSTMENT_RESPONSE                     = 0x000,  // 5.0.5 16048
    CMSG_TIME_SYNC_RESP                               = 0x203,  // 5.4.0 17399
    CMSG_TIME_SYNC_RESP_FAILED                        = 0x000,  // 5.0.5 16048
    CMSG_TOGGLE_PVP                                   = 0x182C, // 5.4.0 17399
    CMSG_TOTEM_DESTROYED                              = 0x13E3, // 5.4.0 17399
    CMSG_TRADE_INFO                                   = 0x164E, // 5.4.0 17399
    CMSG_TRAINER_BUY_SPELL                            = 0x12EF, // 5.4.0 17399
    CMSG_TRAINER_LIST                                 = 0x1AFA, // 5.4.0 17399
    CMSG_TRANSMOGRIFY_ITEMS                           = 0x1928, // 5.4.0 17399
    CMSG_TRIGGER_CINEMATIC_CHEAT                      = 0x000,  // 5.0.5 16048
    CMSG_TURN_IN_PETITION                             = 0x1363, // 5.4.0 17399
    CMSG_TUTORIAL_CLEAR                               = 0x1E04, // 5.4.0 17399
    CMSG_TUTORIAL_FLAG                                = 0x1B19, // 5.4.0 17399
    CMSG_TUTORIAL_RESET                               = 0x174C, // 5.4.0 17399
    CMSG_UNACCEPT_TRADE                               = 0x15A0, // 5.4.0 17399
    CMSG_UNLEARN_SKILL                                = 0x177A, // 5.4.0 17399
    CMSG_UNLEARN_SPECIALIZATION                       = 0x000,  // 5.0.5 16048
    CMSG_UNREGISTER_ALL_ADDON_PREFIXES                = 0x143C, // 5.4.0 17399
    CMSG_UPDATE_ACCOUNT_DATA                          = 0x12DF, // 5.4.0 17399
    CMSG_UPDATE_MISSILE_TRAJECTORY                    = 0x152A, // 5.4.0 17399
    CMSG_UPDATE_PROJECTILE_POSITION                   = 0x000,  // 5.0.5 16048
    CMSG_UPGRADE_ITEM                                 = 0x11A0, // 5.4.0 17399
    CMSG_USED_FOLLOW                                  = 0x000,  // 5.0.5 16048
    CMSG_USE_ITEM                                     = 0x14A8, // 5.4.0 17399
    CMSG_VIOLENCE_LEVEL                               = 0x1927, // 5.4.0 17399
    CMSG_VOICE_SESSION_ENABLE                         = 0x171B, // 5.4.0 17399
    CMSG_VOID_STORAGE_QUERY                           = 0x100A, // 5.4.0 17399
    CMSG_VOID_STORAGE_TRANSFER                        = 0x158C, // 5.4.0 17399
    CMSG_VOID_STORAGE_UNLOCK                          = 0x11A7, // 5.4.0 17399
    CMSG_VOID_SWAP_ITEM                               = 0x14A3, // 5.4.0 17399
    CMSG_WARDEN_DATA                                  = 0x1702, // 5.4.0 17399
    CMSG_WARGAME_ACCEPT                               = 0x000,  // 5.0.5 16048
    CMSG_WARGAME_START                                = 0x000,  // 5.0.5 16048
    CMSG_WHO                                          = 0x1E06, // 5.4.0 17399
    CMSG_WHOIS                                        = 0x1A53, // 5.4.0 17399
    CMSG_WORLD_STATE_UI_TIMER_UPDATE                  = 0x1646, // 5.4.0 17399
    CMSG_WORLD_TELEPORT                               = 0x000,  // 5.0.5 16048
    CMSG_WRAP_ITEM                                    = 0x041,  // 5.4.0 17399
    CMSG_ZONEUPDATE                                   = 0x000,  // 5.0.5 16048
    CMSG_PLAYER_MOVE                                  = 0x717,  // 5.4.0 17399 CUSTOM OPCODE, client patch
    CMSG_CORPSE_QUERY                                 = 0x13DB, // 5.4.0 17399
    CMSG_CONQUEST_POINTS_STATS_REQUEST                = 0x1B16, // 5.4.0 17399
    CMSG_ARENA_2v2_STATS_REQUEST                      = 0x1186, // 5.4.0 17399
    CMSG_ARENA_3v3_STATS_REQUEST                      = 0x13C6, // 5.4.0 17399

    // MSG
    MSG_INSPECT_ARENA_TEAMS                           = 0x000,  // 5.0.5 16048
    MSG_AUCTION_HELLO                                 = 0x000,  // 5.0.5 16048
    MSG_BATTLEGROUND_PLAYER_POSITIONS                 = 0x000,  // 5.0.5 16048 deprecated
    MSG_GM_BIND_OTHER                                 = 0x000,  // 5.0.5 16048
    MSG_GM_SHOWLABEL                                  = 0x000,  // 5.0.5 16048
    MSG_GM_SUMMON                                     = 0x000,  // 5.0.5 16048
    MSG_MOVE_CHARM_TELEPORT_CHEAT                     = 0,      // Client patched
    MSG_MOVE_FALL_LAND                                = 0,      // Client patched
    MSG_MOVE_GRAVITY_CHNG                             = 0,      // Client patched
    MSG_MOVE_HOVER                                    = 0,      // Client patched
    MSG_MOVE_HEARTBEAT                                = 0,      // Client patched
    MSG_MOVE_JUMP                                     = 0,      // Client patched
    MSG_MOVE_SET_ALL_SPEED_CHEAT                      = 0,      // Client patched
    MSG_MOVE_SET_COLLISION_HEIGHT                     = 0,      // Client patched
    MSG_MOVE_SET_FACING                               = 0,      // Client patched
    MSG_MOVE_SET_FLIGHT_SPEED_CHEAT                   = 0,      // Client patched
    MSG_MOVE_SET_PITCH                                = 0,      // Client patched
    MSG_MOVE_SET_RAW_POSITION_ACK                     = 0,      // Client patched
    MSG_MOVE_SET_RUN_BACK_SPEED_CHEAT                 = 0,      // Client patched
    MSG_MOVE_SET_RUN_MODE                             = 0,      // Client patched
    MSG_MOVE_SET_RUN_SPEED_CHEAT                      = 0,      // Client patched
    MSG_MOVE_SET_SWIM_BACK_SPEED_CHEAT                = 0,      // Client patched
    MSG_MOVE_SET_SWIM_SPEED_CHEAT                     = 0,      // Client patched
    MSG_MOVE_SET_TURN_RATE_CHEAT                      = 0,      // Client patched
    MSG_MOVE_SET_WALK_MODE                            = 0,      // Client patched
    MSG_MOVE_SET_WALK_SPEED_CHEAT                     = 0,      // Client patched
    MSG_MOVE_START_ASCEND                             = 0,      // Client patched
    MSG_MOVE_START_BACKWARD                           = 0,      // Client patched
    MSG_MOVE_START_DESCEND                            = 0,      // Client patched
    MSG_MOVE_STOP                                     = 0,      // Client patched
    MSG_MOVE_TELEPORT_ACK                             = 0xB2E,  // 5.4.0 17399
    MSG_MOVE_TELEPORT_CHEAT                           = 0,      // Client patched
    MSG_MOVE_TIME_SKIPPED                             = 0,      // Client patched
    MSG_MOVE_TOGGLE_COLLISION_CHEAT                   = 0,      // Client patched
    MSG_MOVE_TOGGLE_FALL_LOGGING                      = 0,      // Client patched
    MSG_MOVE_TOGGLE_LOGGING                           = 0,      // Client patched
    MSG_MOVE_UPDATE_CAN_FLY                           = 0,      // Client patched
    MSG_MOVE_UPDATE_FLIGHT_SPEED                      = 0,      // Client patched
    MSG_MOVE_UPDATE_MOUSE                             = 0,      // Client patched
    MSG_MOVE_UPDATE_RUN_SPEED                         = 0,      // Client patched
    MSG_MOVE_UPDATE_TELEPORT                          = 0,      // Client patched
    MSG_MOVE_WATER_WALK                               = 0,      // Client patched
    MSG_MOVE_WORLDPORT_ACK                            = 0x1752, // 5.4.0 17399
    MSG_NOTIFY_PARTY_SQUELCH                          = 0x000,  // 5.0.5 16048
    MSG_QUERY_NEXT_MAIL_TIME                          = 0x1F61, // 5.4.0 17399
    MSG_SET_RAID_DIFFICULTY                           = 0x1F80, // 5.4.0 17399
    MSG_VERIFY_CONNECTIVITY                           = 0x4F57, // 5.4.0 17399

    // SMSG
    SMSG_ACCOUNT_CRITERIA_UPDATE                      = 0x82C,  // 5.4.0 17399
    SMSG_ACCOUNT_CRITERIA_UPDATE_ALL                  = 0x112,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ACCOUNT_DATA_TIMES                           = 0x890,  // 5.4.0 17399
    SMSG_ACCOUNT_INFO_RESPONSE                        = 0x899,  // 5.4.0 17399 (JamList)
    SMSG_ACCOUNT_PROFILE                              = 0x0B5,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ACCOUNT_RESTRICTED_WARNING                   = 0x02D,  // 5.4.0 17399 (JamList)
    SMSG_ACHIEVEMENT_DELETED                          = 0x8BF,  // 5.4.0 17399 (JamList)
    SMSG_ACHIEVEMENT_EARNED                           = 0x5B4,  // 5.4.0 17399
    SMSG_ACTIVATE_TAXI_REPLY                          = 0x119,  // 5.4.0 17399
    SMSG_ADJUST_SPLINE_DURATION                       = 0x82D,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ADDON_INFO                                   = 0x128,  // 5.4.0 17399
    SMSG_ADD_BATTLENET_FRIEND_RESPONSE                = 0x587,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ADD_LOSS_OF_CONTROL                          = 0x18F,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ADD_RUNE_POWER                               = 0x000,  // 5.0.5 16048
    SMSG_AE_LOOT_TARGETS                              = 0x831,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_AE_LOOT_TARGETS_ACK                          = 0x5B0,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_AI_REACTION                                  = 0x5B1,  // 5.4.0 17399
    SMSG_ALL_ACHIEVEMENT_DATA                         = 0x816,  // 5.4.0 17399
    SMSG_APPLY_MOVEMENT_FORCE                         = 0x1766, // 5.4.0 17399
    SMSG_AREA_SPIRIT_HEALER_TIME                      = 0x092,  // 5.4.0 17399
    SMSG_AREA_SHARE_MAPPINGS_RESPONSE                 = 0x8A3,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_AREA_SHARE_INFO_RESPONSE                     = 0x81A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_AREA_TRIGGER_DENIED                          = 0x0A2,  // 5.4.0 17399 (JamList) (NYI) or SMSG_AREA_TRIGGER_MESSAGE ?
    SMSG_AREA_TRIGGER_MESSAGE                         = 0x000,  // 5.0.5 16048
    SMSG_AREA_TRIGGER_MOVEMENT_UPDATE                 = 0x01D,  // 5.4.0 17399 (JamList)
    SMSG_AREA_TRIGGER_NO_CORPSE                       = 0x43D,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_AREA_TRIGGER_RESET                           = 0x8B7,  // 5.4.0 17399 (JamList)
    SMSG_ARENA_ERROR                                  = 0x91C,  // 5.4.0 17399 (JamList)
    SMSG_ARENA_OPPONENT_UPDATE                        = 0x000,  // 5.0.5 16048
    SMSG_ARENA_OPPONENT_SPECIALIZATIONS               = 0x52A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ARENA_TEAM_CHANGE_FAILED_QUEUED              = 0x000,  // 5.0.5 16048
    SMSG_ARENA_TEAM_COMMAND_RESULT                    = 0x000,  // 5.0.5 16048
    SMSG_ARENA_TEAM_EVENT                             = 0x000,  // 5.0.5 16048
    SMSG_ARENA_TEAM_INVITE                            = 0x000,  // 5.0.5 16048
    SMSG_ARENA_TEAM_QUERY_RESPONSE                    = 0x000,  // 5.0.5 16048
    SMSG_ARENA_TEAM_ROSTER                            = 0x000,  // 5.0.5 16048
    SMSG_ARENA_TEAM_STATS                             = 0x000,  // 5.0.5 16048
    SMSG_ATTACKER_STATE_UPDATE                        = 0x1BC0, // 5.4.0 17399
    SMSG_ATTACK_START                                 = 0x427,  // 5.4.0 17399
    SMSG_ATTACK_STOP                                  = 0x50F,  // 5.4.0 17399
    SMSG_ATTACK_SWING_ERROR                           = 0x53C,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ATTACK_SWING_BAD_FACING                      = 0x000,  // 5.0.5 16048
    SMSG_ATTACK_SWING_CANT_ATTACK                     = 0x000,  // 5.0.5 16048
    SMSG_ATTACK_SWING_DEAD_TARGET                     = 0x000,  // 5.0.5 16048
    SMSG_ATTACK_SWING_NOT_IN_RANGE                    = 0x000,  // 5.0.5 16048
    SMSG_AUCTION_BIDDER_LIST_RESULT                   = 0x1F3C, // 5.4.0 17399
    SMSG_AUCTION_BIDDER_NOTIFICATION                  = 0x500,  // 5.4.0 17399
    SMSG_AUCTION_BUYOUT_NOTIFICATION                  = 0x5BA,  // 5.4.0 17399
    SMSG_AUCTION_COMMAND_RESULT                       = 0x12F,  // 5.4.0 17399
    SMSG_AUCTION_CLOSED_NOTIFICATION                  = 0x930,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_AUCTION_HELLO_RESPONSE                       = 0x186,  // 5.4.0 17399
    SMSG_AUCTION_LIST_PENDING_SALES                   = 0x16CD, // 5.4.0 17399
    SMSG_AUCTION_LIST_RESULT                          = 0x1B4D, // 5.4.0 17399
    SMSG_AUCTION_OWNER_LIST_RESULT                    = 0x1B21, // 5.4.0 17399
    SMSG_AUCTION_OWNER_BID_NOTIFICATION               = 0x581,  // 5.4.0 17399
    SMSG_AUCTION_REMOVED_NOTIFICATION                 = 0x000,  // 5.0.5 16048
    SMSG_AURA_CAST_LOG                                = 0x000,  // 5.0.5 16048
    SMSG_AURA_POINTS_DEPLETED                         = 0x000,  // 5.0.5 16048
    SMSG_AURA_UPDATE                                  = 0x19B3, // 5.4.0 17399
    SMSG_AUTH_CHALLENGE                               = 0x16A,  // 5.4.0 17399
    SMSG_AUTH_RESPONSE                                = 0x90E,  // 5.4.0 17399
    SMSG_AVAILABLE_VOICE_CHANNEL                      = 0x101,  // 5.4.0 17399 (JamList)
    SMSG_AVERAGE_ITEM_LEVEL_INFORM                    = 0x53A,  // 5.4.0 17399 (JamList)
    SMSG_BARBER_SHOP_RESULT                           = 0x59D,  // 5.4.0 17399
    SMSG_BATTLEFIELD_LIST                             = 0x1B5,  // 5.4.0 17399
    SMSG_BATTLEFIELD_MGR_EJECTED                      = 0x528,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_MGR_EJECT_PENDING                = 0x582,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_MGR_ENTERING                     = 0x428,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_MGR_ENTRY_INVITE                 = 0x1B9,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_MGR_EXIT_REQUEST                 = 0x835,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_MGR_QUEUE_INVITE                 = 0x41D,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_MGR_QUEUE_REQUEST_RESPONSE       = 0x035,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_MGR_STATE_CHANGED                = 0x02C,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_PORT_DENIED                      = 0x482,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_RATED_INFO                       = 0x827,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_STATUS                           = 0x59C,  // 5.4.0 17399
    SMSG_BATTLEFIELD_STATUS_QUEUED                    = 0x10D,  // 5.4.0 17399
    SMSG_BATTLEFIELD_STATUS_NEED_CONFIRMATION         = 0x507,  // 5.4.0 17399
    SMSG_BATTLEFIELD_STATUS_ACTIVE                    = 0x52B,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_STATUS_WAIT_FOR_GROUPS           = 0x814,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEFIELD_STATUS_FAILED                    = 0x5B9,  // 5.4.0 17399
    SMSG_BATTLEGROUND_INIT                            = 0x13B,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_BATTLEGROUND_INFO_THROTTLED                  = 0x484,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEGROUND_POINTS                          = 0x518,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_BATTLEGROUND_PLAYER_JOINED                   = 0x8B2,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEGROUND_PLAYER_LEFT                     = 0x822,  // 5.4.0 17399 (JamList)
    SMSG_BATTLEGROUND_PLAYER_POSITIONS                = 0x838,  // 5.4.0 17399
    SMSG_BATTLEPET_CAGE_DATA_ERROR                    = 0x837,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_DELETE                             = 0x8AC,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_ERROR                              = 0x491,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_HEALED                             = 0x108,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_JOURNAL                            = 0x5B5,  // 5.4.0 17399
    SMSG_BATTLEPET_JOURNAL_LOCK_ACQUIRED              = 0x1B1,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_JOURNAL_LOCK_DENIED                = 0x107,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_LICENSE_CHANGED                    = 0x103,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_TRAP_LEVEL                         = 0x81C,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BATTLEPET_UPDATE                             = 0x192,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_BEASTMASTER_FAILED                           = 0x03A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_BINDER_CONFIRM                               = 0x894,  // 5.4.0 17399
    SMSG_BIND_POINT_UPDATE                            = 0x404,  // 5.4.0 17399
    SMSG_BIND_ZONE_REPLY                              = 0x000,  // 5.0.5 16048
    SMSG_BLACK_MARKET_OPEN_RESULT                     = 0x4A6,  // 5.4.0 17399
    SMSG_BLACK_MARKET_OUT_BID                         = 0x195,  // 5.4.0 17399
    SMSG_BLACK_MARKET_ITEM_RESULT                     = 0x481,  // 5.4.0 17399
    SMSG_BLACK_MARKET_BID_ON_ITEM_RESULT              = 0x92C,  // 5.4.0 17399
    SMSG_BLACK_MARKET_WON                             = 0x5AB,  // 5.4.0 17399
    SMSG_BONUS_ROLL_EMPTY                             = 0x184,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_BREAK_TARGET                                 = 0x423,  // 5.4.0 17399
    SMSG_BUY_BANK_SLOT_RESULT                         = 0x000,  // 5.0.5 16048
    SMSG_BUY_FAILED                                   = 0x1AA,  // 5.4.0 17399
    SMSG_BUY_ITEM                                     = 0x5A8,  // 5.4.0 17399
    SMSG_CALENDAR_ACTION_PENDING                      = 0x000,  // 5.0.5 16048
    SMSG_CALENDAR_ARENA_TEAM                          = 0x000,  // 5.0.5 16048
    SMSG_CALENDAR_CLEAR_PENDING_ACTION                = 0x4B5,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_COMMAND_RESULT                      = 0x496,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_INITIAL_INVITE                = 0x401,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CALENDAR_EVENT_INVITE                        = 0x191,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_INVITE_ALERT                  = 0x534,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_INVITE_NOTES                  = 0x913,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_INVITE_NOTES_ALERT            = 0x591,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_INVITE_REMOVED                = 0x011,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_INVITE_REMOVED_ALERT          = 0x4B9,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_INVITE_STATUS                 = 0x4A9,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CALENDAR_EVENT_INVITE_STATUS_ALERT           = 0x810,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_MODERATOR_STATUS              = 0x888,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CALENDAR_EVENT_MODERATOR_STATUS_ALERT        = 0x000,  // 5.0.5 16048
    SMSG_CALENDAR_EVENT_REMOVED_ALERT                 = 0x006,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_EVENT_STATUS                        = 0x000,  // 5.0.5 16048
    SMSG_CALENDAR_EVENT_UPDATED_ALERT                 = 0x086,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_FILTER_GUILD                        = 0x000,  // 5.0.5 16048
    SMSG_CALENDAR_RAID_LOCKOUT_ADDED                  = 0x19F,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_RAID_LOCKOUT_REMOVED                = 0x08E,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_RAID_LOCKOUT_UPDATED                = 0x5AC,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_SEND_CALENDAR                       = 0x020,  // 5.4.0 17399
    SMSG_CALENDAR_SEND_EVENT                          = 0x889,  // 5.4.0 17399 (JamList)
    SMSG_CALENDAR_SEND_NUM_PENDING                    = 0x121,  // 5.4.0 17399
    SMSG_CALENDAR_UPDATE_INVITE_LIST                  = 0x000,  // 5.0.5 16048
    SMSG_CAMERA_SHAKE                                 = 0x88E,  // 5.4.0 17399 (JamList)
    SMSG_CANCEL_AUTO_REPEAT                           = 0x41C,  // 5.4.0 17399
    SMSG_CANCEL_COMBAT                                = 0x59E,  // 5.4.0 17399
    SMSG_CANCEL_SCENE                                 = 0x589,  // 5.4.0 17399 (JamList) SCENE System (NYI)
    SMSG_CANCEL_ORPHAN_SPELL_VISUAL                   = 0x42C,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CANCEL_SPELL_VISUAL                          = 0x8A2,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CANCEL_SPELL_VISUAL_KIT                      = 0x58D,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CAST_FAILED                                  = 0x039,  // 5.4.0 17399
    SMSG_CAN_DUEL_RESULT                              = 0x801,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CHALLENGE_MODE_MAP_STATS_UPDATE              = 0x183,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_CHALLENGE_MODE_DELETE_LEADER_RESULT          = 0x489,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_CHALLENGE_MODE_ALL_MAP_STATS                 = 0x521,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_CHALLENGE_MODE_REQUEST_LEADERS_RESULT        = 0x836,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_CHALLENGE_MODE_REWARDS                       = 0x502,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_CHALLENGE_MODE_NEW_PLAYER_RECORD             = 0x83A,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_CHALLENGE_MODE_COMPLETE                      = 0x014,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_CHANGER_PLAYER_DIFFICULTY_RESULT             = 0x588,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CHANNEL_LIST                                 = 0x1BA5, // 5.4.0 17399
    SMSG_CHANNEL_MEMBER_COUNT                         = 0x000,  // 5.0.5 16048
    SMSG_CHANNEL_NOTIFY                               = 0x1760, // 5.4.0 17399
    SMSG_CHARACTER_LOGIN_FAILED                       = 0x815,  // 5.4.0 17399 (JamList)
    SMSG_CHAR_CREATE                                  = 0x914,  // 5.4.0 17399
    SMSG_CHAR_CUSTOMIZE                               = 0x832,  // 5.4.0 17399
    SMSG_CHAR_DELETE                                  = 0x806,  // 5.4.0 17399
    SMSG_CHAR_ENUM                                    = 0x193,  // 5.4.0 17399
    SMSG_CHAR_FACTION_OR_RACE_CHANGE                  = 0x1788, // 5.4.0 17399
    SMSG_CHAR_RENAME                                  = 0x000,  // 5.0.5 16048
    SMSG_CHAT_DOWN                                    = 0x49C,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CHAT_IS_DOWN                                 = 0x48D,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CHAT_IGNORED_ACCOUNT_MUTED                   = 0x590,  // 5.4.0 17399 (JamList)
    SMSG_CHAT_NOT_IN_PARTY                            = 0x1A7,  // 5.4.0 17399 (JamList)
    SMSG_CHAT_PLAYER_AMBIGUOUS                        = 0x52F,  // 5.0.5 16048
    SMSG_CHAT_PLAYER_NOT_FOUND                        = 0x51E,  // 5.4.0 17399
    SMSG_CHAT_RESTRICTED                              = 0x5A5,  // 5.0.5 16048
    SMSG_CHAT_SERVER_DISCONNECTED                     = 0x000,  // 5.0.5 16048
    SMSG_CHAT_SERVER_RECONNECTED                      = 0x40D,  // 5.4.0 17399 (JamList)
    SMSG_CHAT_WRONG_FACTION                           = 0x000,  // 5.0.5 16048
    SMSG_CHECK_FOR_BOTS                               = 0x000,  // 5.0.5 16048
    SMSG_CHEAT_IGNORE_REQUIEREMENTS_DISABLED          = 0x891,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CHEAT_IGNORE_REQUIEREMENTS_ENABLED           = 0x580,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CHEAT_PLAYER_LOOKUP                          = 0x539,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CLEAR_BOSS_EMOTES                            = 0x009,  // 5.4.0 17399 (JamList)
    SMSG_CLEAR_COOLDOWN                               = 0x5A4,  // 5.4.0 17399
    SMSG_CLEAR_FAR_SIGHT_IMMEDIATE                    = 0x000,  // 5.0.5 16048
    SMSG_CLEAR_LOSS_OF_CONTROL                        = 0x535,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CLEAR_TARGET                                 = 0x512,  // 5.4.0 17399
    SMSG_CLEAR_ITEM_CHALLENGE_MODE_DATA               = 0x0AD,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CLIENT_CACHE_VERSION                         = 0x825,  // 5.4.0 17399
    SMSG_CLIENT_CONTROL_UPDATE                        = 0x513,  // 5.4.0 17399
    SMSG_COMBAT_EVENT_FAILED                          = 0x59F,  // 5.4.0 17399 (JamList)
    SMSG_COMBAT_LOG_MULTIPLE                          = 0x000,  // 5.0.5 16048
    SMSG_COMMENTATOR_MAP_INFO                         = 0x11F,  // 5.4.0 17399 (JamList)
    SMSG_COMMENTATOR_PARTY_INFO                       = 0x000,  // 5.0.5 16048
    SMSG_COMMENTATOR_PLAYER_INFO                      = 0x887,  // 5.4.0 17399 (JamList)
    SMSG_COMMENTATOR_SKIRMISH_QUEUE_RESULT1           = 0x000,  // 5.0.5 16048
    SMSG_COMMENTATOR_SKIRMISH_QUEUE_RESULT2           = 0x000,  // 5.0.5 16048
    SMSG_COMMENTATOR_STATE_CHANGED                    = 0x8BA,  // 5.4.0 17399 (JamList)
    SMSG_COMPLAIN_RESULT                              = 0x118,  // 5.4.0 17399
    SMSG_COMSAT_CONNECT_FAIL                          = 0x000,  // 5.0.5 16048
    SMSG_COMSAT_DISCONNECT                            = 0x000,  // 5.0.5 16048
    SMSG_COMSAT_RECONNECT_TRY                         = 0x000,  // 5.0.5 16048
    SMSG_CONSOLE_WRITE                                = 0x410,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CONTACT_LIST                                 = 0x13F5, // 5.4.0 17399
    SMSG_CONVERT_RUNE                                 = 0x0AC,  // 5.4.0 17399
    SMSG_COOLDOWN_CHEAT                               = 0x120,  // 5.4.0 17399 (JamList)
    SMSG_COOLDOWN_EVENT                               = 0x185,  // 5.4.0 17399
    SMSG_CORPSE_QUERY                                 = 0x903,  // 5.4.0 17399
    SMSG_CORPSE_MAP_POSITION_QUERY_RESPONSE           = 0x000,  // 5.0.5 16048
    SMSG_CORPSE_NOT_IN_INSTANCE                       = 0x000,  // 5.0.5 16048
    SMSG_CORPSE_RECLAIM_DELAY                         = 0x4BB,  // 5.4.0 17399
    SMSG_CORPSE_TRANSPORT_QUERY                       = 0x530,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_CREATURE_QUERY_RESPONSE                      = 0x1B4,  // 5.4.0 17399
    SMSG_CRITERIA_DELETED                             = 0x100,  // 5.4.0 17399
    SMSG_CRITERIA_UPDATE                              = 0x537,  // 5.4.0 17399
    SMSG_CROSSED_INEBRIATION_THRESHOLD                = 0x91A,  // 5.4.0 17399
    SMSG_CURRENCY_LOOT_REMOVED                        = 0x000,  // 5.0.5 16048
    SMSG_CURRENCY_LOOT_RESTORED                       = 0x000,  // 5.0.5 16048 Deprecated 0x30A0 4.3.4
    SMSG_CUSTOM_LOAD_SCREEN                           = 0x50B,  // 5.4.0 17399 (JamList)
    SMSG_DAMAGE_CALC_LOG                              = 0x16B9, // 5.4.0 17399
    SMSG_DAMAGE_DONE_OBSOLETE                         = 0x000,  // 5.0.5 16048
    SMSG_DANCE_QUERY_RESPONSE                         = 0x000,  // 5.0.5 16048
    SMSG_DB_LOOKUP_RESULT                             = 0x90A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_DB_REPLY                                     = 0x025,  // 5.4.0 17399
    SMSG_DEATH_RELEASE_LOC                            = 0x885,  // 5.4.0 17399
    SMSG_DEBUG_RUNE_REGEN                             = 0x509,  // 5.4.0 17399 (JamList)
    SMSG_DEFENSE_MESSAGE                              = 0x826,  // 5.4.0 17399 (JamList)
    SMSG_DESTROY_OBJECT                               = 0x4BD,  // 5.4.0 17399
    SMSG_DESTROY_ARENA_UNIT                           = 0x517,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_DESTRUCTIBLE_BUILDING_DAMAGE                 = 0x430,  // 5.4.0 17399 (JamList)
    SMSG_DIFFERENT_INSTANCE_FROM_PARTY                = 0x1A3,  // 5.4.0 17399 (JamList)
    SMSG_DISENCHANT_CREDIT                            = 0x8B0,  // 5.4.0 17399 (JamList)
    SMSG_DISMOUNT                                     = 0x03E,  // 5.4.0 17399
    SMSG_DISMOUNTRESULT                               = 0x001,  // 5.4.0 17399
    SMSG_DISPEL_FAILED                                = 0x000,  // 5.0.5 16048
    SMSG_DISPLAY_GAME_ERROR                           = 0x8BE,  // 5.4.0 17399 (JamList)
    SMSG_DISPLAY_PROMOTION                            = 0x809,  // 5.4.0 17399 - uint32(idPromotion)
    SMSG_DISPLAY_PLAYER_CHOICE                        = 0x829,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_DONT_AUTO_PUSH_SPELLS_TO_ACTION_BAR          = 0x181,  // 5.4.0 17399
    SMSG_DROP_NEW_CONNECTION                          = 0x000,  // 5.0.5 16048
    SMSG_DUEL_COMPLETE                                = 0x18C,  // 5.4.0 17399
    SMSG_DUEL_COUNTDOWN                               = 0x805,  // 5.4.0 17399
    SMSG_DUEL_INBOUNDS                                = 0x40E,  // 5.4.0 17399
    SMSG_DUEL_OUT_OF_BOUNDS                           = 0x83E,  // 5.4.0 17399
    SMSG_DUEL_REQUESTED                               = 0x080C, // 5.4.0 17399
    SMSG_DUEL_WINNER                                  = 0x599,  // 5.4.0 17399
    SMSG_DUMP_RIDE_TICKETS_RESPONSE                   = 0x13A,  // 5.4.0 17399
    SMSG_DUMP_OBJECTS_DATA                            = 0x58E,  // 5.4.0 17399
    SMSG_DURABILITY_DAMAGE_DEATH                      = 0x1B3,  // 5.4.0 17399
    SMSG_DYNAMIC_DROP_ROLL_RESULT                     = 0x095,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ECHO_PARTY_SQUELCH                           = 0x000,  // 5.0.5 16048
    SMSG_EMOTE                                        = 0x1B7D, // 5.4.0 17399
    SMSG_ENABLE_BARBER_SHOP                           = 0x89E,  // 5.4.0 17399
    SMSG_ENABLE_HONOR_BUDDY_DETECTION                 = 0x125,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_ENCHANTMENT_LOG                              = 0x922,  // 5.4.0 17399
    SMSG_ENVIRONMENTAL_DAMAGE_LOG                     = 0x15B1, // 5.4.0 17399
    SMSG_EQUIPMENT_SET_LIST                           = 0x938,  // 5.4.0 17399
    SMSG_EQUIPMENT_SET_SAVED                          = 0x5AD,  // 5.4.0 17399
    SMSG_EXPECTED_SPAM_RECORDS                        = 0x10A,  // 5.4.0 17399 (JamList)
    SMSG_EXPLORATION_EXPERIENCE                       = 0x583,  // 5.4.0 17399
    SMSG_FACTION_BONUS_INFO                           = 0x407,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_FAILED_PLAYER_CONDITION                      = 0x524,  // 5.4.0 17399 (JamList)
    SMSG_FEATURE_SYSTEM_STATUS                        = 0x0B9,  // 5.4.0 17399
    SMSG_FEIGN_DEATH_RESISTED                         = 0x936,  // 5.4.0 17399
    SMSG_FISH_ESCAPED                                 = 0x0B6,  // 5.4.0 17399
    SMSG_FISH_NOT_HOOKED                              = 0x818,  // 5.4.0 17399
    SMSG_FLIGHT_SPLINE_SYNC                           = 0x000,  // 5.0.5 16048
    SMSG_FLOOD_DETECTED                               = 0x000,  // 5.0.5 16048
    SMSG_FORCE_ANIM                                   = 0x892,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_FORCE_OBJECT_RELINK                          = 0x8AA,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_FORCE_ACTION_SHOW                            = 0x199,  // 5.4.0 17399 (JamList)
    SMSG_FORCED_DEATH_UPDATE                          = 0x0BD,  // 5.4.0 17399 (JamList)
    SMSG_FORCE_DISPLAY_UPDATE                         = 0x497,  // 5.4.0 17399 (JamList)
    SMSG_FORCE_SEND_QUEUED_PACKETS                    = 0x000,  // 5.0.5 16048
    SMSG_FORCE_SET_VEHICLE_REC_ID                     = 0x895,  // 5.4.0 17399 (JamList)
    SMSG_FORGE_MASTER_SET                             = 0x0B2,  // 5.4.0 17399 (JamList)
    SMSG_FRIEND_STATUS                                = 0x1B29, // 5.4.0 17399
    SMSG_GAMEOBJECT_CUSTOM_ANIM                       = 0x19A,  // 5.4.0 17399 (JamList)
    SMSG_GAMEOBJECT_DESPAWN_ANIM                      = 0x000,  // 5.0.5 16048
    SMSG_GAMEOBJECT_PAGETEXT                          = 0x000,  // 5.0.5 16048
    SMSG_GAMEOBJECT_QUERY_RESPONSE                    = 0x015,  // 5.4.0 17399
    SMSG_GAMEOBJECT_RESET_STATE                       = 0x898,  // 5.4.0 17399 (JamList)
    SMSG_GAMEOBJECT_PLAY_SPELL_VISUAL                 = 0x425,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GAME_SPEED_SET                               = 0x589,  // 5.4.0 17399 (JamList)
    SMSG_GAME_TIME_SET                                = 0x10E,  // 5.4.0 17399 (JamList)
    SMSG_GAME_TIME_UPDATE                             = 0x136,  // 5.4.0 17399 (JamList)
    SMSG_GAME_EVENT_DEBUG_LOG                         = 0x50D,  // 5.4.0 17399 (JamList)
    SMSG_GAME_OBJECT_ACTIVATE_ANIM_KIT                = 0x12B,  // 5.4.0 17399 (JamList)
    SMSG_GAME_OBJECT_DESPAWN                          = 0x49E,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GHOST                                        = 0x409,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GHOSTEE_GONE                                 = 0x504,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_ACCOUNT_ONLINE_RESPONSE                   = 0x902,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_CASE_STATUS                               = 0x89A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_CHANGE_ARENA_RATING                       = 0x5B3,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_CHARACTER_RESTORE_RESPONSE                = 0x83B,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_CHARACTER_SAVE_FAILURE                    = 0x010,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_CHARACTER_SAVE_SUCESS                     = 0x0BE,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_DESTROY_CORPSE                            = 0x4A3,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_FREEZE_FAILURE                            = 0x811,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_FREEZE_SUCESS                             = 0x50A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_GEAR_RATING_RESPONSE                      = 0x092,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_MESSAGECHAT                               = 0x000,  // 5.0.5 16048
    SMSG_GM_NAMED_POINTS                              = 0x10C,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_NOTIFY_AREA_CHANGE                        = 0x4B4,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_PLAYER_INFO                               = 0x411,  // 5.4.0 17399 (JamList)
    SMSG_GM_PHASE_DUMP                                = 0x0B8,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_RESPONSE_DB_ERROR                         = 0x000,  // 5.0.5 16048
    SMSG_GM_RESPONSE_RECEIVED                         = 0x817,  // 5.4.0 17399
    SMSG_GM_RESPONSE_STATUS_UPDATE                    = 0x12E,  // 5.4.0 17399
    SMSG_GM_RESURRECT_FAILURE                         = 0x8BB,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_RESURRECT_SUCESS                          = 0x029,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_REQUEST_PLAYER_INFO                       = 0x127,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_REVEAL_TO                                 = 0x133,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_SILENCE                                   = 0x51F,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_SHOW_COMPLAINTS                           = 0x12A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_SUMMON                                    = 0x88F,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GM_TICKET_GET_TICKET_RESPONSE                = 0x820,  // 5.4.0 17399
    SMSG_GM_TICKET_RESPONSE_ERROR                     = 0x1AB,  // 5.4.0 17399 (NYI)
    SMSG_GM_TICKET_RESOLVE_EVAL                       = 0x111,  // 5.4.0 17399
    SMSG_GM_TICKET_SYSTEM_STATUS                      = 0x803,  // 5.4.0 17399
    SMSG_GM_TICKET_STATUS_UPDATE                      = 0x426,  // 5.4.0 17399
    SMSG_GM_UNSQUELCH                                 = 0x915,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_GOD_MODE                                     = 0x533,  // 5.4.0 17399 (JamList)
    SMSG_GOSSIP_COMPLETE                              = 0x153C, // 5.4.0 17399
    SMSG_GOSSIP_MESSAGE                               = 0x1508, // 5.4.0 17399
    SMSG_GOSSIP_POI                                   = 0x1E0C, // 5.4.0 17399
    SMSG_GROUP_ACTION_THROTTLED                       = 0x429,  // 5.4.0 17399 (JamList)
    SMSG_GROUP_CANCEL                                 = 0x000,  // 5.0.5 16048
    SMSG_GROUP_DECLINE                                = 0x12D1, // 5.4.0 17399
    SMSG_GROUP_DESTROYED                              = 0x1280, // 5.4.0 17399
    SMSG_GROUP_INVITE                                 = 0x01C,  // 5.4.0 17399
    SMSG_GROUP_JOINED_BATTLEGROUND                    = 0x000,  // 5.0.5 16048
    SMSG_GROUP_SET_LEADER                             = 0x43F,  // 5.4.0 17399
    SMSG_GROUP_UNINVITE                               = 0x1734, // 5.4.0 17399
    SMSG_GUILD_ACHIEVEMENT_DATA                       = 0x0C5E,  // 5.4.0 17399
    SMSG_GUILD_ACHIEVEMENT_DELETED                    = 0x000,  // 5.0.5 16048
    SMSG_GUILD_ACHIEVEMENT_EARNED                     = 0xC76,  // 5.4.0 17399
    SMSG_GUILD_ACHIEVEMENT_MEMBERS                    = 0x000,  // 5.0.5 16048
    SMSG_GUILD_BANK_LIST                              = 0xC77,  // 5.4.0 17399
    SMSG_GUILD_BANK_LOG_QUERY_RESULT                  = 0x472,  // 5.4.0 17399
    SMSG_GUILD_BANK_MONEY_WITHDRAWN                   = 0x473,  // 5.4.0 17399
    SMSG_GUILD_BANK_QUERY_TEXT_RESULT                 = 0x54A,  // 5.4.0 17399
    SMSG_GUILD_CANCEL                                 = 0x000,  // 5.0.5 16048
    SMSG_GUILD_CHALLENGE_COMPLETED                    = 0x552,  // 5.4.0 17399
    SMSG_GUILD_CHALLENGE_UPDATED                      = 0x54B,  // 5.4.0 17399
    SMSG_GUILD_CHANGE_NAME_RESULT                     = 0x000,  // 5.0.5 16048
    SMSG_GUILD_COMMAND_RESULT                         = 0x462,  // 5.4.0 17399
    SMSG_GUILD_COMMAND_RESULT_2                       = 0x000,  // 5.0.5 16048
    SMSG_GUILD_CRITERIA_DATA                          = 0x57E,  // 5.4.0 17399
    SMSG_GUILD_CRITERIA_DELETED                       = 0x000,  // 5.0.5 16048
    SMSG_GUILD_DECLINE                                = 0x000,  // 5.0.5 16048
    SMSG_GUILD_EVENT                                  = 0x000,  // obsolete, remove once all guild event opcode and strutures are RE'ed
    SMSG_GUILD_EVENT_BANK_MONEY_CHANGED               = 0x543,  // 5.4.0 17399
    SMSG_GUILD_EVENT_LOG_QUERY_RESULT                 = 0x46B,  // 5.4.0 17399
    SMSG_GUILD_EVENT_NEW_LEADER                       = 0x45A,  // 5.4.0 17399
    SMSG_GUILD_EVENT_RANK_CHANGED                     = 0xC42,  // 5.4.0 17399
    SMSG_GUILD_EVENT_TAB_MODIFIED                     = 0x443,  // 5.4.0 17399
    SMSG_GUILD_FLAGGED_FOR_RENAME                     = 0x000,  // 5.0.5 16048
    SMSG_GUILD_INVITE                                 = 0xC66,  // 5.4.0 17399
    SMSG_GUILD_INVITE_CANCEL                          = 0x000,  // 5.0.5 16048
    SMSG_GUILD_KNOWN_RECIPES                          = 0x000,  // 5.0.5 16048
    SMSG_GUILD_MAX_DAILY_XP                           = 0x000,  // 5.0.5 16048
    SMSG_GUILD_MEMBERS_FOR_RECIPE                     = 0x000,  // 5.0.5 16048
    SMSG_GUILD_MEMBER_DAILY_RESET                     = 0x000,  // 5.0.5 16048
    SMSG_GUILD_MEMBER_RECIPES                         = 0x000,  // 5.0.5 16048
    SMSG_GUILD_MEMBER_UPDATE_NOTE                     = 0x000,  // 5.0.5 16048
    SMSG_GUILD_MOVE_COMPLETE                          = 0x000,  // 5.0.5 16048
    SMSG_GUILD_MOVE_STARTING                          = 0x000,  // 5.0.5 16048
    SMSG_GUILD_NEWS_DELETED                           = 0x000,  // 5.0.5 16048
    SMSG_GUILD_NEWS_UPDATE                            = 0x54E,  // 5.4.0 17399
    SMSG_GUILD_PARTY_STATE_RESPONSE                   = 0xC73,  // 5.4.0 17399
    SMSG_GUILD_PERMISSIONS_QUERY_RESULTS              = 0x442,  // 5.4.0 17399
    SMSG_GUILD_QUERY_RESPONSE                         = 0xD42,  // 5.4.0 17399
    SMSG_GUILD_RANK                                   = 0x446,  // 5.4.0 17399
    SMSG_GUILD_RANKS_UPDATE                           = 0x56A,  // 5.4.0 17399
    SMSG_GUILD_RECIPES                                = 0x46F,  // 5.4.0 17399
    SMSG_GUILD_RENAMED                                = 0x000,  // 5.0.5 16048
    SMSG_GUILD_REPUTATION_REACTION_CHANGED            = 0x000,  // 5.0.5 16048
    SMSG_GUILD_REPUTATION_WEEKLY_CAP                  = 0x457,  // 5.4.0 17399
    SMSG_GUILD_SEND_MEMBER_LEAVE                      = 0xC46,  // 5.4.0 17399
    SMSG_GUILD_SEND_PLAYER_LOGIN_STATUS               = 0xC43,  // 5.4.0 17399
    SMSG_GUILD_SEND_PLAYER_JOINED                     = 0x556,  // 5.4.0 17399
    SMSG_GUILD_RESET                                  = 0x000,  // 5.0.5 16048
    SMSG_GUILD_REWARDS_LIST                           = 0xC5A,  // 5.4.0 17399
    SMSG_GUILD_ROSTER                                 = 0x44E,  // 5.4.0 17399
    SMSG_GUILD_SEND_MOTD                              = 0xD47,  // 5.4.0 17399
    SMSG_GUILD_SET_NOTE                               = 0x000,  // 5.0.5 16048
    SMSG_GUILD_TRADESKILL_UPDATE                      = 0x000,  // 5.0.5 16048
    SMSG_GUILD_UPDATE_ROSTER                          = 0x000,  // 5.0.5 16048
    SMSG_GUILD_XP                                     = 0x572,  // 5.4.0 17399
    SMSG_GUILD_XP_GAIN                                = 0x557,  // 5.4.0 17399
    SMSG_GUILD_XP_UPDATE                              = 0x000,  // 5.0.5 16048
    SMSG_HEALTH_UPDATE                                = 0x018,  // 5.4.0 17399 (JamList)
    SMSG_HIGHEST_THREAT_UPDATE                        = 0x00B,  // 5.4.0 17399
    SMSG_HOTFIX_INFO                                  = 0x416,  // 5.4.0 17399
    SMSG_HOTFIX_NOTIFY                                = 0x432,  // 5.4.0 17399 (JamList)
    SMSG_IMMIGRANT_HOST_SEARCH_LOG                    = 0x819,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_INITIALIZE_FACTIONS                          = 0x90F,  // 5.4.0 17399
    SMSG_INITIAL_COOLDOWNS                            = 0x1500, // 5.4.0 17399
    SMSG_INITIAL_SPELLS                               = 0x000,  // 5.0.5 16048 Deprecated
    SMSG_INITIAL_SETUP                                = 0x1AD,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_INIT_CURRENCY                                = 0x494,  // 5.4.0 17399
    SMSG_INIT_WORLD_STATES                            = 0x929,  // 5.4.0 17399 (JamList)
    SMSG_INSPECT                                      = 0x000,  // 5.0.5 16048
    SMSG_INSPECT_RATED_BG_STATS                       = 0x000,  // unk
    SMSG_INSPECT_HONOR_STATS                          = 0x0A5,  // 5.4.0 17399 (JamList)
    SMSG_INSPECT_RESULTS_UPDATE                       = 0x000,  // 5.0.5 16048
    SMSG_INSPECT_TALENT                               = 0x901,  // 5.4.0 17399
    SMSG_INSTANCE_DIFFICULTY                          = 0x000,  // 5.0.5 16048
    SMSG_INSTANCE_LOCK_WARNING_QUERY                  = 0x895,  // 5.4.0 17399
    SMSG_INSTANCE_RESET                               = 0x5AF,  // 5.4.0 17399
    SMSG_INSTANCE_RESET_FAILED                        = 0x137,  // 5.4.0 17399
    SMSG_INSTANCE_SAVE_CREATED                        = 0x93A,  // 5.4.0 17399
    SMSG_INVALIDATE_DANCE                             = 0x000,  // 5.0.5 16048
    SMSG_INVALIDATE_PLAYER                            = 0x013,  // 5.4.0 17399 (JamList)
    SMSG_INVALID_PROMOTION_CODE                       = 0x934,  // 5.4.0 17399 (JamList)
    SMSG_INVENTORY_CHANGE_FAILURE                     = 0x813,  // 5.4.0 17399
    SMSG_ITEM_ADD_PASSIVE                             = 0x92D,  // 5.4.0 17399 (JamList)
    SMSG_ITEM_COOLDOWN                                = 0x1F91, // 5.4.0 17399
    SMSG_ITEM_ENCHANT_TIME_UPDATE                     = 0x437,  // 5.4.0 17399
    SMSG_ITEM_REFUND_INFO_RESPONSE                    = 0x83C,  // 5.4.0 17399
    SMSG_ITEM_PUSH_RESULT                             = 0x008,  // 5.4.0 17399
    SMSG_ITEM_REFUND_RESULT                           = 0x197,  // 5.4.0 17399
    SMSG_ITEM_REMOVE_PASSIVE                          = 0x58F,  // 5.4.0 17399 (JamList)
    SMSG_ITEM_SEND_PASSIVE                            = 0x000,  // 5.0.5 16048
    SMSG_ITEM_TEXT_QUERY_RESPONSE                     = 0x1B80, // 5.4.0 17399
    SMSG_ITEM_TIME_UPDATE                             = 0x58D,  // 5.4.0 17399
    SMSG_ITEM_UPGRADE_RESULT                          = 0x91F,  // 5.4.0 17399
    SMSG_JOINED_BATTLEGROUND_QUEUE                    = 0x000,  // 5.0.5 16048
    SMSG_KICK_REASON                                  = 0x920,  // 5.4.0 17399 (JamList)
    SMSG_LEARNED_DANCE_MOVES                          = 0x000,  // 5.0.5 16048
    SMSG_LEARNED_SPELL                                = 0x830,  // 5.4.0 17399
    SMSG_LEVELUP_INFO                                 = 0x402,  // 5.4.0 17399
    SMSG_LFG_BOOT_PROPOSAL_UPDATE                     = 0x000,  // 5.0.5 16048
    SMSG_LFG_BOOT_PLAYER                              = 0x583,  // 5.4.0 17399 (JamList)
    SMSG_LFG_DISABLED                                 = 0x105,  // 5.4.0 17399 (JamList)
    SMSG_LFG_JOIN_RESULT                              = 0x017,  // 5.4.0 17399 (JamList)
    SMSG_LFG_OFFER_CONTINUE                           = 0x8AB,  // 5.4.0 17399 (JamList)
    SMSG_LFG_OPEN_FROM_GOSSIP                         = 0x000,  // 5.0.5 16048
    SMSG_LFG_PARTY_INFO                               = 0x000,  // 5.4.0 17399 (JamList)
    SMSG_LFG_PLAYER_INFO                              = 0x1A2,  // 5.4.0 17399 (JamList)
    SMSG_LFG_PLAYER_REWARD                            = 0x5A2,  // 5.4.0 17399 (JamList)
    SMSG_LFG_PROPOSAL_UPDATE                          = 0x49F,  // 5.4.0 17399 (JamList)
    SMSG_LFG_QUEUE_STATUS                             = 0x08D,  // 5.4.0 17399 (JamList)
    SMSG_LFG_ROLE_CHECK_UPDATE                        = 0x415,  // 5.4.0 17399 (JamList)
    SMSG_LFG_ROLE_CHOSEN                              = 0x187,  // 5.4.0 17399 (JamList)
    SMSG_LFG_SEARCH_RESULT                            = 0x487,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_LFG_SLOT_INVALID                             = 0x080,  // 5.4.0 17399 (JamList)
    SMSG_LFG_TELEPORT_DENIED                          = 0x833,  // 5.4.0 17399 (JamList)
    SMSG_LFG_UPDATE_LIST                              = 0x000,  // 5.0.5 16048
    SMSG_LFG_UPDATE_PARTY                             = 0x000,  // 5.0.5 16048
    SMSG_LFG_UPDATE_PLAYER                            = 0x000,  // 5.0.5 16048
    SMSG_LFG_UPDATE_SEARCH                            = 0x000,  // 5.0.5 16048
    SMSG_LFG_UPDATE_STATUS                            = 0x807,  // 5.4.0 17399 (JamList)
    SMSG_LFG_UPDATE_STATUS_NONE                       = 0x909,  // 5.4.0 17399 (JamList)
    SMSG_LF_GUILD_BROWSE_UPDATED                      = 0xC5B,  // 5.4.0 17399
    SMSG_LF_GUILD_COMMAND_RESULT                      = 0x000,  // 5.0.5 16048
    SMSG_LF_GUILD_MEMBERSHIP_LIST_UPDATED             = 0x466,  // 5.4.0 17399
    SMSG_LF_GUILD_POST_UPDATED                        = 0x55E,  // 5.4.0 17399
    SMSG_LF_GUILD_RECRUIT_LIST_UPDATED                = 0x54F,  // 5.4.0 17399
    SMSG_LIST_INVENTORY                               = 0x88D,  // 5.4.0 17399
    SMSG_LIST_TARGETS                                 = 0x418,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_LOAD_CUF_PROFILES                            = 0x09D,  // 5.4.0 17399
    SMSG_LOGIN_SET_TIME_SPEED                         = 0x1AF,  // 5.4.0 17399
    SMSG_LOGIN_VERIFY_WORLD                           = 0x896,  // 5.4.0 17399
    SMSG_LOGOUT_CANCEL_ACK                            = 0x417,  // 5.4.0 17399
    SMSG_LOGOUT_COMPLETE                              = 0x0A8,  // 5.4.0 17399
    SMSG_LOGOUT_RESPONSE                              = 0x8AD,  // 5.4.0 17399
    SMSG_LOG_XP_GAIN                                  = 0x4A2,  // 5.4.0 17399
    SMSG_LOSS_OF_CONTROL_AURA_UPDATE                  = 0x823,  // 5.4.0 17399
    SMSG_LOOT_ALL_PASSED                              = 0x0AB,  // 5.4.0 17399 (JamList)
    SMSG_LOOT_CONTENTS                                = 0x115,  // 5.4.0 17399 (JamList)
    SMSG_LOOT_ITEM_LIST                               = 0x412,  // 5.4.0 17399 (JamList) (NYI) or SMSG_LOOT_LIST ?
    SMSG_LOOT_LIST                                    = 0x110,  // 5.4.0 17399
    SMSG_MASTER_LOOT_CANDIDATE_LIST                   = 0x4A0,  // 5.4.0 17399
    SMSG_LOOT_MONEY_NOTIFY                            = 0x52D,  // 5.4.0 17399
    SMSG_LOOT_RELEASE_RESPONSE                        = 0x000,  // 5.0.5 16048 not found on JamList but 2 SMSG_LOOT_RELEASE opcode, one of them are the response ?
    SMSG_LOOT_RELEASE                                 = 0x033,  // 5.4.0 17399 (JamList)
    SMSG_LOOT_RELEASE_ALL                             = 0x51C,  // 5.4.0 17399 (JamList) (NYI?)
    SMSG_LOOT_REMOVED                                 = 0x5A6,  // 5.4.0 17399
    SMSG_LOOT_RESPONSE                                = 0x48F,  // 5.4.0 17399
    SMSG_LOOT_ROLL                                    = 0x526,  // 5.4.0 17399
    SMSG_LOOT_ROLLS_COMPLETE                          = 0x082,  // 5.4.0 17399
    SMSG_LOOT_ROLL_WON                                = 0x1BD,  // 5.4.0 17399 (JamList)
    SMSG_LOOT_START_ROLL                              = 0x510,  // 5.4.0 17399
    SMSG_LOOT_UPDATED                                 = 0x907,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_COIN_REMOVED                                 = 0x003,  // 5.4.0 17399
    SMSG_MAIL_LIST_RESULT                             = 0x88C,  // 5.4.0 17399
    SMSG_MAP_OBJ_EVENTS                               = 0x08F,  // 5.4.0 17399 (JamList)
    SMSG_MEETINGSTONE_COMPLETE                        = 0x000,  // 5.0.5 16048
    SMSG_MEETINGSTONE_IN_PROGRESS                     = 0x000,  // 5.0.5 16048
    SMSG_MEETINGSTONE_MEMBER_ADDED                    = 0x000,  // 5.0.5 16048
    SMSG_MEETINGSTONE_SETQUEUE                        = 0x000,  // 5.0.5 16048
    SMSG_MESSAGE_CHAT                                 = 0x92F,  // 5.4.0 17399
    SMSG_MESSAGE_BOX                                  = 0x8BD,  // 5.4.0 17399 (JamList)
    SMSG_MINIGAME_SETUP                               = 0x000,  // 5.0.5 16048
    SMSG_MINIGAME_STATE                               = 0x000,  // 5.0.5 16048
    SMSG_MINIMAP_PING                                 = 0x408,  // 5.4.0 17399
    SMSG_MIRROR_IMAGE_DATA                            = 0x1936, // 5.4.0 17399
    SMSG_MISSILE_CANCEL                               = 0x882,  // 5.4.0 17399 (JamList)
    SMSG_MODIFY_COOLDOWN                              = 0x83D,  // 5.4.0 17399
    SMSG_MONEY_NOTIFY                                 = 0x585,  // 5.4.0 17399 - "Received %u." - 1xUInt64
    SMSG_MONSTER_MOVE                                 = 0x137A, // 5.4.0 17399
    SMSG_MOTD                                         = 0x82A,  // 5.4.0 17399
    SMSG_MOUNT_RESULT                                 = 0x531,  // 5.4.0 17399
    SMSG_MOUNT_SPECIAL_ANIM                           = 0x000,  // 5.0.5 16048
    SMSG_MOVE_COLLISION_DISABLE                       = 0x000,  // 5.0.5 16048
    SMSG_MOVE_COLLISION_ENABLE                        = 0x000,  // 5.0.5 16048
    SMSG_MOVE_CHARACTER_CHEAT_FAILURE                 = 0x932,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_MOVE_CHARACTER_CHEAT_SUCCESS                 = 0x506,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_MOVE_FEATHER_FALL                            = 0x1377, // 5.4.0 17399
    SMSG_MOVE_GRAVITY_DISABLE                         = 0x134E, // 5.4.0 17399
    SMSG_MOVE_GRAVITY_ENABLE                          = 0x175B, // 5.4.0 17399
    SMSG_MOVE_KNOCK_BACK                              = 0x16FA, // 5.4.0 17399
    SMSG_MOVE_LAND_WALK                               = 0x1753, // 5.4.0 17399
    SMSG_MOVE_NORMAL_FALL                             = 0x1A07, // 5.4.0 17399
    SMSG_MOVE_ROOT                                    = 0x1747, // 5.4.0 17399
    SMSG_MOVE_UPDATE                                  = 0x139F, // 5.4.0 17399
    SMSG_MOVE_SET_ACTIVE_MOVER                        = 0x12E3, // 5.4.0 17399
    SMSG_MOVE_SET_CAN_FLY                             = 0x1353, // 5.4.0 17399
    SMSG_MOVE_SET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY = 0x000,  // 5.0.5 16048
    SMSG_MOVE_SET_COLLISION_HEIGHT                    = 0x1266, // 5.4.0 17399
    SMSG_MOVE_SET_COMPOUND_STATE                      = 0x000,  // 5.0.5 16048
    SMSG_MOVE_SET_FLIGHT_BACK_SPEED                   = 0x1A2B, // 5.4.0 17399
    SMSG_MOVE_SET_FLIGHT_SPEED                        = 0x179F, // 5.4.0 17399
    SMSG_MOVE_SET_HOVER                               = 0x136B, // 5.4.0 17399
    SMSG_MOVE_SET_PITCH_RATE                          = 0x17C2, // 5.4.0 17399
    SMSG_MOVE_SET_RUN_BACK_SPEED                      = 0x1782, // 5.4.0 17399
    SMSG_MOVE_SET_RUN_SPEED                           = 0x12D6, // 5.4.0 17399
    SMSG_MOVE_SET_SWIM_BACK_SPEED                     = 0x13D7, // 5.4.0 17399
    SMSG_MOVE_SET_SWIM_SPEED                          = 0x1356, // 5.4.0 17399
    SMSG_MOVE_SET_TURN_RATE                           = 0x176B, // 5.4.0 17399
    SMSG_MOVE_SET_VEHICLE_REC_ID                      = 0x000,  // 5.0.5 16048
    SMSG_MOVE_SET_WALK_SPEED                          = 0x161B, // 5.4.0 17399
    SMSG_MOVE_TELEPORT                                = 0x1342, // 5.4.0 17399
    SMSG_MOVE_UNROOT                                  = 0x1247, // 5.4.0 17399
    SMSG_MOVE_UNSET_CAN_FLY                           = 0x16CE, // 5.4.0 17399
    SMSG_MOVE_UNSET_CAN_TRANSITION_BETWEEN_SWIM_AND_FLY = 0x000,// 5.0.5 16048
    SMSG_MOVE_UNSET_HOVER                             = 0x1A16, // 5.4.0 17399
    SMSG_MOVE_UPDATE_COLLISION_HEIGHT                 = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_FLIGHT_BACK_SPEED                = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_KNOCK_BACK                       = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_PITCH_RATE                       = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_RUN_BACK_SPEED                   = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_SWIM_BACK_SPEED                  = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_SWIM_SPEED                       = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_TELEPORT                         = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_TURN_RATE                        = 0x000,  // 5.0.5 16048
    SMSG_MOVE_UPDATE_WALK_SPEED                       = 0x000,  // 5.0.5 16048
    SMSG_MOVE_WATER_WALK                              = 0x1646, // 5.4.0 17399
    SMSG_MULTIPLE_PACKETS                             = 0x000,  // 5.0.5 16048
    SMSG_NAME_QUERY_RESPONSE                          = 0x0B7,  // 5.4.0 17399
    SMSG_NEW_TAXI_PATH                                = 0x431,  // 5.4.0 17399
    SMSG_NEW_WORLD                                    = 0x1AE,  // 5.4.0 17399
    SMSG_NEW_WORLD_ABORT                              = 0x000,  // 5.0.5 16048
    SMSG_NEUTRAL_PLAYER_FACTION_SELECT_RESULT         = 0x918,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_NOTIFICATION                                 = 0x42E,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_NOTIFY_DANCE                                 = 0x000,  // 5.0.5 16048
    SMSG_NOTIFY_DEST_LOC_SPELL_CAST                   = 0x000,  // 5.0.5 16048
    SMSG_NPC_TEXT_UPDATE                              = 0x886,  // 5.4.0 17399
    SMSG_NPC_WONT_TALK                                = 0x000,  // 5.0.5 16048
    SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA         = 0x43E,  // 5.4.0 17399
    SMSG_OPEN_CONTAINER                               = 0x908,  // 5.4.0 17399 (JamList)
    SMSG_OPEN_LFG_DUNGEON_FINDER                      = 0x0B3,  // 5.4.0 17399 (JamList)
    SMSG_OVERRIDE_LIGHT                               = 0x81E,  // 5.4.0 17399 (JamList)
    SMSG_PAGE_TEXT_QUERY_RESPONSE                     = 0x114,  // 5.4.0 17399
    SMSG_PAGE_TEXT                                    = 0x116,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_PARTY_COMMAND_RESULT                         = 0x16A5, // 5.4.0 17399
    SMSG_PARTY_KILL_LOG                               = 0x000,  // 5.0.5 16048
    SMSG_PARTY_MEMBER_STATS                           = 0x13C,  // 5.4.0 17399
    SMSG_PARTY_MEMBER_STATS_FULL                      = 0x000,  // 5.0.5 16048
    SMSG_PARTY_UPDATE                                 = 0x13D,  // 5.4.0 17399
    SMSG_PAUSE_MIRROR_TIMER                           = 0x488,  // 5.4.0 17399 (JamList)
    SMSG_PERIODIC_AURA_LOG                            = 0x1097, // 5.4.0 17399
    SMSG_PENDING_RAID_LOCK                            = 0x59E,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_PETITION_ALREADY_SIGNED                      = 0x00C,  // 5.4.0 17399
    SMSG_PETITION_DECLINED                            = 0x592,  // 5.4.0 17399
    SMSG_PETITION_QUERY_RESPONSE                      = 0x419,  // 5.4.0 17399
    SMSG_PETITION_RENAME                              = 0x4BA,  // 5.4.0 17399
    SMSG_PETITION_SHOW_LIST                           = 0x514,  // 5.4.0 17399
    SMSG_PETITION_SHOW_SIGNATURES                     = 0x421,  // 5.4.0 17399
    SMSG_PET_ACTION_FEEDBACK                          = 0x43B,  // 5.4.0 17399
    SMSG_PET_ACTION_SOUND                             = 0x4A5,  // 5.4.0 17399
    SMSG_PET_ADDED                                    = 0x43A,  // 5.4.0 17399 (JamList)
    SMSG_PET_BROKEN                                   = 0x000,  // 5.0.5 16048
    SMSG_PET_BATTLE_CHAT_RESTRICTED                   = 0x4B0,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_DEBUG_QUEUE_DUMP_RESPONSE         = 0x190,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_FINAL_ROUND                       = 0x0AE,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_FINALISE_LOCATION                 = 0x0A4,  // 5.4.0 17399
    SMSG_PET_BATTLE_FINISHED                          = 0x593,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_FIRST_ROUND                       = 0x10B,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_INITIAL_UPDATE                    = 0x596,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_MAX_GAME_LENGHT_WARNING           = 0x42D,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_PVP_CHALLENGE                     = 0x91E,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_QUEUE_PROPOSE_MATCH               = 0x026,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_QUEUE_STATUS                      = 0x5A3,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_ROUND_RESULT                      = 0x019,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_REPLACEMENTS_MADE                 = 0x5BF,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_REQUEST_FAILED                    = 0x80D,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_BATTLE_SLOT_UPDATE                       = 0x0AF,  // 5.4.0 17399 PET_BATTLE NYI
    SMSG_PET_CAST_FAILED                              = 0x138,  // 5.4.0 17399
    SMSG_PET_DISMISS_SOUND                            = 0x82B,  // 5.4.0 17399
    SMSG_PET_GOD_MODE                                 = 0x0A7,  // 5.4.0 17399 (JamList)
    SMSG_PET_GUIDS                                    = 0x132,  // 5.4.0 17399 (JamList)
    SMSG_PET_LEARNED_SPELL                            = 0x405,  // 5.4.0 17399
    SMSG_PET_MODE                                     = 0x030,  // 5.4.0 17399
    SMSG_PET_NAME_INVALID                             = 0x188,  // 5.4.0 17399
    SMSG_PET_NAME_QUERY_RESPONSE                      = 0x5A1,  // 5.0.5 16048
    SMSG_PET_REMOVED_SPELL                            = 0x4AC,  // 5.4.0 17399
    SMSG_PET_RENAMEABLE                               = 0x000,  // 5.0.5 16048
    SMSG_PET_SLOT_UPDATED                             = 0x89F,  // 5.4.0 17399 (JamList)
    SMSG_PET_SPELLS                                   = 0x1885, // 5.4.0 17399
    SMSG_PET_STABLE_LIST                              = 0x11C,  // 5.4.0 17399
    SMSG_PET_TAME_FAILURE                             = 0x53F,  // 5.4.0 17399
    SMSG_PLAYED_TIME                                  = 0x812,  // 5.4.0 17399
    SMSG_PLAYER_BIND_ERROR                            = 0x000,  // 5.0.5 16048
    SMSG_PLAYER_BOUND                                 = 0x808,  // 5.4.0 17399
    SMSG_PLAYER_DIFFICULTY_CHANGE                     = 0x000,  // 5.0.5 16048
    SMSG_PLAYER_NOT_FOUND_FAILURE                     = 0x4AF,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_PLAYER_SKINNED                               = 0x522,  // 5.4.0 17399 (JamList)
    SMSG_PLAYER_TABARD_VENDOR_ACTIVATE                = 0x000,  // 5.4.0 17399
    SMSG_PLAYER_SAVE_GUILD_EMBLEM                     = 0x880,  // 5.4.0 17399
    SMSG_PLAYER_TABARD_VENDOR_SHOW                    = 0x091,  // 5.4.0 17399
    SMSG_PLAYER_UNK_DEAD_ALIVE                        = 0x000,  // 5.0.5 16048
    SMSG_PLAYER_VEHICLE_DATA                          = 0x48A,  // 5.4.0 17399
    SMSG_PLAY_DANCE                                   = 0x000,  // 5.0.5 16048
    SMSG_PLAY_MUSIC                                   = 0x000,  // 5.0.5 16048
    SMSG_PLAY_OBJECT_SOUND                            = 0x0A3,  // 5.4.0 17399
    SMSG_PLAY_ONE_SHOT_ANIM_KIT                       = 0x022,  // 5.4.0 17399
    SMSG_PLAY_ORPHAN_SPELL_VISUAL                     = 0x8AE,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_PLAY_SCENE                                   = 0x1A9,  // 5.4.0 17399 (JamList) SCENE System (NYI)
    SMSG_PLAY_SOUND                                   = 0x4A1,  // 5.4.0 17399
    SMSG_PLAY_SPELL_VISUAL                            = 0x800,  // 5.4.0 17399 (JamList)
    SMSG_PLAY_SPELL_VISUAL_KIT                        = 0x1A5,  // 5.4.0 17399
    SMSG_PLAY_TIME_WARNING                            = 0x18A,  // 5.4.0 17399 (JamList)
    SMSG_PONG                                         = 0x043,  // 5.4.0 17399
    SMSG_POWER_UPDATE                                 = 0x4AD,  // 5.4.0 17399
    SMSG_PRE_RESURRECT                                = 0x4AA,  // 5.4.0 17399
    SMSG_PRINT_NOTIFICATION                           = 0x42E,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_PROCRESIST                                   = 0x000,  // 5.0.5 16048
    SMSG_PROPOSE_LEVEL_GRANT                          = 0x834,  // 5.4.0 17399 (JamList)
    SMSG_PROFILE_DATA_RESPONSE                        = 0x498,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_PUREMOUNT_CANCELLED_OBSOLETE                 = 0x000,  // 5.0.5 16048
    SMSG_PVP_CREDIT                                   = 0x0BC,  // 5.4.0 17399
    SMSG_PVP_LOG_DATA                                 = 0x480,  // 5.4.0 17399
    SMSG_PVP_OPTIONS_ENABLED                          = 0x5A9,  // 5.4.0 17399
    SMSG_QUERY_QUESTS_COMPLETED_RESPONSE              = 0x000,  // 5.0.5 16048 Deprecated
    SMSG_QUERY_OBJECT_POSITION                        = 0x910,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_QUERY_OBJECT_ROTATION                        = 0x104,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_QUERY_TIME_RESPONSE                          = 0x08C,  // 5.4.0 17399
    SMSG_QUERY_BATTLEPET_NAME_RESPONSE                = 0x89D,  // 5.4.0 17399 (JamList) BATTLEPET System (NYI)
    SMSG_QUERY_NPC_TEXT_RESPONSE                      = 0x886,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_QUEST_PUSH_RESULT                            = 0x15BA, // 5.4.0 17399
    SMSG_QUESTGIVER_OFFER_REWARD                      = 0x151F, // 5.4.0 17399
    SMSG_QUESTGIVER_QUEST_COMPLETE                    = 0x10BD, // 5.4.0 17399
    SMSG_QUESTGIVER_QUEST_DETAILS                     = 0x142D, // 5.4.0 17399
    SMSG_QUESTGIVER_QUEST_FAILED                      = 0x19AE, // 5.4.0 17399
    SMSG_QUESTGIVER_QUEST_INVALID                     = 0x000,  // 5.0.5 16048
    SMSG_QUESTGIVER_QUEST_LIST                        = 0x158F, // 5.4.0 17399
    SMSG_QUESTGIVER_REQUEST_ITEMS                     = 0x199E, // 5.4.0 17399
    SMSG_QUESTGIVER_STATUS                            = 0x11AA, // 5.4.0 17399
    SMSG_QUESTGIVER_STATUS_MULTIPLE                   = 0x188D, // 5.4.0 17399
    SMSG_QUESTLOG_FULL                                = 0x152A, // 5.4.0 17399
    SMSG_QUESTUPDATE_ADD_CREDIT                       = 0x1988, // 5.4.0 17399
    SMSG_QUESTUPDATE_ADD_PVP_KILL                     = 0x15B9, // 5.4.0 17399
    SMSG_QUESTUPDATE_COMPLETE                         = 0x109F, // 5.4.0 17399
    SMSG_QUESTUPDATE_FAILEDTIMER                      = 0x159C, // 5.4.0 17399
    SMSG_QUEST_CONFIRM_ACCEPT                         = 0x191A, // 5.4.0 17399
    SMSG_QUEST_POI_QUERY_RESPONSE                     = 0x183F, // 5.4.0 17399
    SMSG_QUEST_QUERY_RESPONSE                         = 0x19AB, // 5.4.0 17399
    SMSG_RAID_GROUP_ONLY                              = 0x000,  // 5.0.5 16048
    SMSG_RAID_INSTANCE_INFO                           = 0x4B3,  // 5.4.0 17399
    SMSG_RAID_INSTANCE_MESSAGE                        = 0x41F,  // 5.4.0 17399
    SMSG_RAID_MARKERS_CHANGED                         = 0x094,  // 5.4.0 17399
    SMSG_RAID_READY_CHECK_COMPLETED                   = 0x085,  // 5.4.0 17399
    SMSG_RAID_READY_CHECK_RESPONSE                    = 0x529,  // 5.4.0 17399
    SMSG_RAID_READY_CHECK_STARTED                     = 0x12D,  // 5.4.0 17399
    SMSG_RAID_READY_CHECK_THROTTLED_ERROR             = 0x000,  // 5.0.5 16048
    SMSG_RAID_SUMMON_FAILED                           = 0x000,  // 5.0.5 16048
    SMSG_RAID_TARGET_UPDATE_SINGLE                    = 0x597,  // 5.4.0 17399
    SMSG_RAID_TARGET_UPDATE_ALL                       = 0x09E,  // 5.4.0 17399
    SMSG_RANDOMIZE_CHAR_NAME                          = 0x8B9,  // 5.4.0 17399 (JamList)
    SMSG_RANDOM_ROLL                                  = 0x821,  // 5.4.0 17399
    SMSG_RATED_BG_RATING                              = 0x000,  // 5.0.5 16048
    SMSG_RATED_BG_STATS                               = 0x000,  // 5.0.5 16048
    SMSG_READ_ITEM_FAILED                             = 0x1741, // 5.4.0 17399
    SMSG_READ_ITEM_OK                                 = 0x1231, // 5.4.0 17399
    SMSG_REALM_QUERY_RESPONSE                         = 0x42B,  // 5.4.0 17399
    SMSG_REALM_SPLIT                                  = 0x099,  // 5.4.0 17399
    SMSG_REAL_GROUP_UPDATE                            = 0x000,  // 5.0.5 16048 Deprecated
    SMSG_RECEIVED_MAIL                                = 0x1B6,  // 5.4.0 17399
    SMSG_REDIRECT_CLIENT                              = 0x000,  // 5.0.5 16048
    SMSG_REFER_A_FRIEND_EXPIRED                       = 0x50C,  // 5.4.0 17399 (JamList)
    SMSG_REFER_A_FRIEND_FAILURE                       = 0x1BF,  // 5.4.0 17399 (JamList)
    SMSG_REFORGE_RESULT                               = 0x884,  // 5.4.0 17399
    SMSG_REFRESH_COMPONENT                            = 0x028,  // 5.4.0 17399 (JamList)
    SMSG_REMOVE_LOSS_OF_CONTROL                       = 0x438,  // 5.4.0 17399 (JamList)
    SMSG_UNLEARNED_SPELLS                             = 0x523,  // 5.4.0 17399
    SMSG_REPORT_PVP_AFK_RESULT                        = 0x03F,  // 5.4.0 17399 (JamList)
    SMSG_REQUEST_CEMETERY_LIST_RESPONSE               = 0x499,  // 5.4.0 17399
    SMSG_REQUEST_PVP_REWARDS_RESPONSE                 = 0x08A,  // 5.4.0 17399 (JamList)
    SMSG_RESEARCH_COMPLETE                            = 0x928,  // 5.4.0 17399 (JamList)
    SMSG_RESEARCH_SETUP_HISTORY                       = 0x034,  // 5.4.0 17399 (JamList)
    SMSG_RESET_COMPRESSION_CONTEXT                    = 0x000,  // 5.0.5 16048
    SMSG_RESET_FAILED_NOTIFY                          = 0x8AF,  // 5.4.0 17399
    SMSG_RESET_RANGED_COMBAT_TIMER                    = 0x520,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_RESET_WEEKLY_CURRENCY                        = 0x0BF,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_RESET_DAILY_QUEST                            = 0x1C0C, // 5.4.0 17399
    SMSG_RESISTLOG                                    = 0x000,  // 5.0.5 16048
    SMSG_RESPEC_WIPE_CONFIRM                          = 0x59B,  // 5.4.0 17399
    SMSG_RESPOND_INSPECT_ACHIEVEMENTS                 = 0x084,  // 5.4.0 17399
    SMSG_RESURRECT_REQUEST                            = 0x511,  // 5.4.0 17399
    SMSG_RESUME_TOKEN                                 = 0x0AA,  // 5.4.0 17399
    SMSG_RESYNC_RUNES                                 = 0x52C,  // 5.4.0 17399
    SMSG_ROLE_CHANGED_INFORM                          = 0x88B,  // 5.4.0 17399
    SMSG_ROLL_POLL_INFORM                             = 0x80F,  // 5.4.0 17399
    SMSG_RWHOIS                                       = 0x000,  // 5.0.5 16048
    SMSG_SCENARIO_POI                                 = 0x89C,  // 5.4.0 17399 SCENARIO systeme (NYI)
    SMSG_SCENARIO_PROGRESS_UPDATE                     = 0x198,  // 5.4.0 17399 SCENARIO systeme (NYI)
    SMSG_SCENARIO_STATE                               = 0x139,  // 5.4.0 17399 SCENARIO systeme (NYI)
    SMSG_SCENE_OBJECT_EVENT                           = 0x83F,  // 5.4.0 17399 SCENE systeme (NYI)
    SMSG_SCENE_OBJECT_PET_BATTLE_FINISHED             = 0x11E,  // 5.4.0 17399 SCENE systeme (NYI)
    SMSG_SCENE_OBJECT_PET_BATTLE_FIRST_ROUND          = 0x59A,  // 5.4.0 17399 SCENE systeme (NYI)
    SMSG_SCENE_OBJECT_PET_BATTLE_FINAL_ROUND          = 0x1A4,  // 5.4.0 17399 SCENE systeme (NYI)
    SMSG_SCENE_OBJECT_PET_BATTLE_FULL_UPDATE          = 0x49B,  // 5.4.0 17399 SCENE systeme (NYI)
    SMSG_SCENE_OBJECT_PET_BATTLE_ROUND_RESULT         = 0x51B,  // 5.4.0 17399 SCENE systeme (NYI)
    SMSG_SCENE_OBJECT_PET_BATTLE_REMPLACEMENTS_MADE   = 0x905,  // 5.4.0 17399 SCENE systeme (NYI)
    SMSG_SCRIPT_MESSAGE                               = 0x42A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SELL_ITEM                                    = 0x135,  // 5.4.0 17399
    SMSG_SEND_ITEM_PASSIVE                            = 0x1AC,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SEND_ITEM_DURABILITY                         = 0x41A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SEND_MAIL_RESULT                             = 0x82E,  // 5.4.0 17399
    SMSG_SEND_KNOWN_SPELLS                            = 0x1534, // 5.4.0 17399
    SMSG_SEND_UNLEARN_SPELLS                          = 0x000,  // 5.0.5 16048
    SMSG_SERVER_BUCK_DATA                             = 0x81F,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SERVER_BUCK_DATA_START                       = 0x48A,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SERVER_TIME                                  = 0x92E,  // 5.4.0 17399 (JamList)
    SMSG_SERVER_FIRST_ACHIEVEMENT                     = 0x5AA,  // 5.4.0 17399 (JamList)
    SMSG_SERVER_INFO_QUERY_RESPONSE                   = 0x01F,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SERVER_INFO_RESPONSE                         = 0x01A,  // 5.4.0 17399 (JamList)
    SMSG_SERVER_MESSAGE                               = 0x13A9, // 5.4.0 17399
    SMSG_SERVER_PERF                                  = 0x58C,  // 5.4.0 17399 (JamList)
    SMSG_SET_ARENA_SEASON                             = 0x189,  // 5.4.0 17399
    SMSG_SETUP_RESEARCH_HISTORY                       = 0x000,  // 5.0.5 16048
    SMSG_SET_AI_ANIM_KIT                              = 0x1B9,  // 5.4.0 17399 (JamList)
    SMSG_SET_ANIM_TIMER                               = 0x000,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SET_DF_FAST_LAUNCH_RESULT                    = 0x1B0,  // 5.4.0 17399 (JamList)
    SMSG_SET_DUNGEON_DIFFICULTY                       = 0x40C,  // 5.4.0 17399
    SMSG_SET_FACTION_ATWAR                            = 0x1A0,  // 5.4.0 17399 (JamList)
    SMSG_SET_FACTION_STANDING                         = 0x4BE,  // 5.4.0 17399
    SMSG_SET_FACTION_VISIBLE                          = 0x525,  // 5.4.0 17399
    SMSG_SET_FACTION_NOT_VISIBLE                      = 0x406,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SET_FLAT_SPELL_MODIFIER                      = 0x1530, // 5.4.0 17399
    SMSG_SET_FORCED_REACTIONS                         = 0x098,  // 5.4.0 17399
    SMSG_SET_ITEM_CHALLENGE_MODE_DATA                 = 0x8B4,  // 5.4.0 17399 (JamList) Challenge mode (NYI)
    SMSG_SET_MELEE_ANIM_KIT                           = 0x400,  // 5.4.0 17399 (JamList)
    SMSG_SET_MOVEMENT_ANIM_KIT                        = 0x03C,  // 5.4.0 17399 (JamList)
    SMSG_SET_PCT_SPELL_MODIFIER                       = 0x1C06, // 5.4.0 17399
    SMSG_SET_PET_SPECIALIZATION                       = 0x5BE,  // 5.4.0 17399
    SMSG_SET_PHASE_SHIFT                              = 0x919,  // 5.4.0 17399
    SMSG_SET_PLAYER_DECLINED_NAMES_RESULT             = 0x586,  // 5.4.0 17399 (JamList)
    SMSG_SET_PLAY_HOVER_ANIM                          = 0x196,  // 5.4.0 17399 (JamList)
    SMSG_SET_PROFICIENCY                              = 0x12C,  // 5.4.0 17399 (JamList)
    SMSG_SET_PROJECTILE_POSITION                      = 0x000,  // 5.0.5 16048
    SMSG_SET_PROMOTION_RESPONSE                       = 0x0A6,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SET_SERVER_WOW_TIME                          = 0x594,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SET_TIME_ZONE_INFORMATION                    = 0x883,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SHOW_TAXI_NODES                              = 0x032,  // 5.4.0 17399
    SMSG_SHOW_BANK                                    = 0x005,  // 5.4.0 17399
    SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI        = 0x420,  // 5.4.0 17399
    SMSG_SHOW_RATINGS                                 = 0x508,  // 5.4.0 17399 (JamList)
    SMSG_SHOW_ZONES_CHEAT_RESULT                      = 0x893,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_SOCKET_GEMS                                  = 0x11D,  // 5.4.0 17399
    SMSG_SOR_START_EXPERIENCE_INCOMPLETE              = 0x81D,  // 5.4.0 17399 (JamList)
    SMSG_SPELLBREAKLOG                                = 0x000,  // 5.0.5 16048
    SMSG_SPELLDAMAGESHIELD                            = 0x000,  // 5.0.5 16048
    SMSG_SPELLDISPELLOG                               = 0x000,  // 5.0.5 16048
    SMSG_SPELL_ENERGIZE_LOG                           = 0x1492, // 5.4.0 17399
    SMSG_SPELL_HEAL_LOG                               = 0x1594, // 5.4.0 17399
    SMSG_SPELLINSTAKILLLOG                            = 0x000,  // 5.0.5 16048
    SMSG_SPELL_INTERRUPT_LOG                          = 0x1980, // 5.4.0 17399
    SMSG_SPELLLOGEXECUTE                              = 0x10A6, // 5.4.0 17399
    SMSG_SPELLLOGMISS                                 = 0x000,  // 5.0.5 16048
    SMSG_SPELL_NON_MELEE_DAMAGE_LOG                   = 0x1085, // 5.4.0 17399
    SMSG_SPELL_OR_DAMAGE_IMMUNE                       = 0x1837, // 5.4.0 17399
    SMSG_SPELLSTEALLOG                                = 0x000,  // 5.0.5 16048
    SMSG_SPELL_CATEGORY_COOLDOWN                      = 0x1434, // 5.4.0 17399
    SMSG_SPELL_CHANNEL_START                          = 0x1195, // 5.4.0 17399
    SMSG_SPELL_CHANNEL_UPDATE                         = 0x1405, // 5.4.0 17399
    SMSG_SPELL_COOLDOWN                               = 0x10B5, // 5.4.0 17399
    SMSG_SPELL_DELAYED                                = 0x1595, // 5.4.0 17399
    SMSG_SPELL_FAILED_OTHER                           = 0x1BA,  // 5.4.0 17399
    SMSG_SPELL_FAILURE                                = 0x48E,  // 5.4.0 17399 (JamList)
    SMSG_SPELL_GO                                     = 0x10B6, // 5.4.0 17399
    SMSG_SPELL_START                                  = 0x1C17, // 5.4.0 17399
    SMSG_SPELL_UPDATE_CHAIN_TARGETS                   = 0x000,  // 5.0.5 16048
    SMSG_SPIRIT_HEALER_CONFIRM                        = 0x923,  // 5.4.0 17399
    SMSG_SPLINE_MOVE_COLLISION_DISABLE                = 0x1A23, // 5.4.0 17399
    SMSG_SPLINE_MOVE_COLLISION_ENABLE                 = 0x166E, // 5.4.0 17399
    SMSG_SPLINE_MOVE_GRAVITY_DISABLE                  = 0x1207, // 5.4.0 17399
    SMSG_SPLINE_MOVE_GRAVITY_ENABLE                   = 0x129B, // 5.4.0 17399
    SMSG_SPLINE_MOVE_ROOT                             = 0x177B, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_FEATHER_FALL                 = 0x166F, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_FLIGHT_BACK_SPEED            = 0x16BB, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_FLIGHT_SPEED                 = 0x160E, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_FLYING                       = 0x165F, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_HOVER                        = 0x126A, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_LAND_WALK                    = 0x137E, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_NORMAL_FALL                  = 0x1A4B, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_PITCH_RATE                   = 0x1767, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_RUN_BACK_SPEED               = 0x174B, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_RUN_MODE                     = 0x1717, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_RUN_SPEED                    = 0x16FB, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_SWIM_BACK_SPEED              = 0x173B, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_SWIM_SPEED                   = 0x1662, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_TURN_RATE                    = 0x138A, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_WALK_MODE                    = 0x1AA3, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_WALK_SPEED                   = 0x166A, // 5.4.0 17399
    SMSG_SPLINE_MOVE_SET_WATER_WALK                   = 0x1386, // 5.4.0 17399
    SMSG_SPLINE_MOVE_START_SWIM                       = 0x165B, // 5.4.0 17399
    SMSG_SPLINE_MOVE_STOP_SWIM                        = 0x1A5F, // 5.4.0 17399
    SMSG_SPLINE_MOVE_UNROOT                           = 0x1AC7, // 5.4.0 17399
    SMSG_SPLINE_MOVE_UNSET_FLYING                     = 0x1343, // 5.4.0 17399
    SMSG_SPLINE_MOVE_UNSET_HOVER                      = 0x122A, // 5.4.0 17399
    SMSG_STABLE_RESULT                                = 0x4B6,  // 5.4.0 17399
    SMSG_STANDSTATE_UPDATE                            = 0x00D,  // 5.4.0 17399
    SMSG_START_ELAPSED_TIMER                          = 0x038,  // 5.4.0 17399 (JamList)
    SMSG_START_ELAPSED_TIMERS                         = 0x424,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_START_MIRROR_TIMER                           = 0x434,  // 5.4.0 17399
    SMSG_START_TIMER                                  = 0x939,  // 5.4.0 17399
    SMSG_STOP_DANCE                                   = 0x000,  // 5.0.5 16048
    SMSG_STOP_MIRROR_TIMER                            = 0x5AE,  // 5.4.0 17399
    SMSG_STOP_ELAPSED_TIMER                           = 0x8B6,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_STREAMING_MOVIE                              = 0x088,  // 5.4.0 17399 (JamList)
    SMSG_SUMMON_CANCEL                                = 0x19E,  // 5.4.0 17399 (JamList)
    SMSG_SUMMON_REQUEST                               = 0x80A,  // 5.4.0 17399
    SMSG_SUPERCEDED_SPELL                             = 0x117,  // 5.4.0 17399
    SMSG_SUPPRESS_NPC_GREETINGS                       = 0x8A7,  // 5.4.0 17399 (JamList)
    SMSG_SUSPEND_COMMS                                = 0x000,  // 5.0.5 16048
    SMSG_SUSPEND_TOKEN_RESPONSE                       = 0x422,  // 5.4.0 17399
    SMSG_TALENTS_INVOLUNTARILY_RESET                  = 0x083,  // 5.4.0 17399 (JamList)
    SMSG_TAXI_NODE_STATUS                             = 0x09F,  // 5.4.0 17399
    SMSG_TEST_DROP_RATE_RESULT                        = 0x000,  // 5.0.5 16048 Unused
    SMSG_TEXT_EMOTE                                   = 0x03B,  // 5.4.0 17399
    SMSG_THREAT_CLEAR                                 = 0x917,  // 5.4.0 17399
    SMSG_THREAT_REMOVE                                = 0x1BB,  // 5.4.0 17399
    SMSG_THREAT_UPDATE                                = 0x012,  // 5.4.0 17399
    SMSG_TIME_ADJUSTMENT                              = 0x49A,  // 5.4.0 17399 (JamList)
    SMSG_TIME_SYNC_REQUEST                            = 0x8A6,  // 5.4.0 17399
    SMSG_TIME_ZONE_INFORMATION                        = 0x883,  // 5.4.0 17399
    SMSG_TITLE_EARNED                                 = 0x91B,  // 5.4.0 17399
    SMSG_TITLE_LOST                                   = 0x839,  // 5.4.0 17399
    SMSG_TOGGLE_XP_GAIN                               = 0x1279, // 5.4.0 17399
    SMSG_TOTEM_CREATED                                = 0x904,  // 5.4.0 17399
    SMSG_TRADE_INFO                                   = 0x13E,  // 5.4.0 17399
    SMSG_TRADE_STATUS                                 = 0x10F,  // 5.4.0 17399
    SMSG_TRADE_UPDATED                                = 0x912,  // 5.4.0 17399
    SMSG_TRAINER_LIST                                 = 0x09A,  // 5.4.0 17399
    SMSG_TRAINER_SERVICE                              = 0x031,  // 5.4.0 17399
    SMSG_TRANSFER_ABORTED                             = 0x8A9,  // 5.4.0 17399
    SMSG_TRANSFER_PENDING                             = 0x8B5,  // 5.4.0 17399
    SMSG_TRIGGER_CINEMATIC                            = 0x16AD, // 5.4.0 17399
    SMSG_TRIGGER_MOVIE                                = 0x414,  // 5.4.0 17399
    SMSG_TURN_IN_PETITION_RESULTS                     = 0x194,  // 5.4.0 17399
    SMSG_TUTORIAL_FLAGS                               = 0x1F35, // 5.4.0 17399
    SMSG_UI_TIME                                      = 0x000,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_UNAPPLY_MOVEMENT_FORCE                       = 0x1376, // 5.4.0 17399
    SMSG_UNIT_HEALTH_FREQUENT                         = 0x000,  // 5.0.5 16048
    SMSG_UNIT_SPELLCAST_START                         = 0x000,  // 5.0.5 16048
    SMSG_UPDATE_ACCOUNT_DATA                          = 0x0A9,  // 5.4.0 17399
    SMSG_UPDATE_ACTION_BUTTONS                        = 0x096,  // 5.4.0 17399
    SMSG_UPDATE_COMBO_POINTS                          = 0x036,  // 5.4.0 17399
    SMSG_UPDATE_CURRENCY                              = 0x0B4,  // 5.4.0 17399
    SMSG_UPDATE_CURRENCY_WEEK_LIMIT                   = 0x19D,  // 5.4.0 17399
    SMSG_UPDATE_DUNGEON_ENCOUNTER_FOR_LOOT            = 0x18B,  // 5.4.0 17399 (JamList)
    SMSG_UPDATE_EXPANSION_LEVEL                       = 0x081,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_UPDATE_INSTANCE_ENCOUNTER_UNIT               = 0x16B5, // 5.4.0 17399
    SMSG_UPDATE_INSTANCE_OWNERSHIP                    = 0x089,  // 5.4.0 17399
    SMSG_UPDATE_ITEM_ENCHANTMENTS                     = 0x000,  // 5.0.5 16048
    SMSG_UPDATE_LAST_INSTANCE                         = 0x5B2,  // 5.4.0 17399
    SMSG_UPDATE_OBJECT                                = 0x17D9, // 5.4.0 17399
    SMSG_UPDATE_SERVER_PLAYER_POSITION                = 0x4B1,  // 5.4.0 17399 (JamList)
    SMSG_UPDATE_TALENT_DATA                           = 0x924,  // 5.4.0 17399
    SMSG_UPDATE_WORLD_STATE                           = 0x90D,  // 5.4.0 17399 (JamList)
    SMSG_USERLIST_ADD                                 = 0x824,  // 5.4.0 17399
    SMSG_USERLIST_REMOVE                              = 0x1B2,  // 5.4.0 17399
    SMSG_USERLIST_UPDATE                              = 0x50E,  // 5.4.0 17399
    SMSG_VOICE_SESSION_FULL                           = 0x000,  // 5.0.5 16048
    SMSG_VOICE_CHAT_STATUS                            = 0x5BC,  // 5.0.5 16048
    SMSG_VOICE_PARENTAL_CONTROLS                      = 0x90B,  // 5.4.0 17399 (JamList)
    SMSG_VOICE_SESSION_LEAVE                          = 0x8A4,  // 5.4.0 17399 (JamList)
    SMSG_VOICE_SESSION_ROSTER_UPDATE                  = 0x18D,  // 5.4.0 17399 (JamList)
    SMSG_VOICE_SET_TALKER_MUTED                       = 0x000,  // 5.0.5 16048
    SMSG_VOID_ITEM_SWAP_RESPONSE                      = 0x439,  // 5.4.0 17399
    SMSG_VOID_STORAGE_CONTENTS                        = 0x09C,  // 5.4.0 17399
    SMSG_VOID_STORAGE_FAILED                          = 0x1BE,  // 5.4.0 17399
    SMSG_VOID_STORAGE_TRANSFER_CHANGES                = 0x435,  // 5.4.0 17399
    SMSG_VOID_TRANSFER_RESULT                         = 0x516,  // 5.4.0 17399
    SMSG_WAIT_QUEUE_FINISH                            = 0x51D,  // 5.4.0 17399 (JamList)
    SMSG_WAIT_QUEUE_UPDATE                            = 0x129,  // 5.4.0 17399 (JamList)
    SMSG_WARDEN_DATA                                  = 0x002,  // 5.4.0 17399
    SMSG_WARGAME_CHECK_ENTRY                          = 0x937,  // 5.4.0 17399 (JamList)
    SMSG_WARGAME_REQUEST_SENT                         = 0x000,  // 5.0.5 16048
    SMSG_WARGAME_REQUEST_SUCCESSFULLY_SENT_TO_OPPENENT= 0x503,  // 5.4.0 17399 (JamList) (NYI)
    SMSG_WEATHER                                      = 0x4A7,  // 5.4.0 17399
    SMSG_WEEKLY_LAST_RESET                            = 0x11A,  // 5.4.0 17399
    SMSG_WEEKLY_RESET_CURRENCY                        = 0x000,  // 5.0.5 16048
    SMSG_WEEKLY_SPELL_USAGE                           = 0x000,  // 5.0.5 16048
    SMSG_WEEKLY_SPELL_USAGE_UPDATE                    = 0x000,  // 5.0.5 16048
    SMSG_WHO                                          = 0x8A5,  // 5.4.0 17399
    SMSG_WHOIS                                        = 0x49D,  // 5.4.0 17399
    SMSG_WORLD_SERVER_INFO                            = 0x52E,  // 5.4.0 17399
    SMSG_WORLD_STATE_UI_TIMER_UPDATE                  = 0x911,  // 5.4.0 17399
    SMSG_XP_GAIN_ABORTED                              = 0x131,  // 5.4.0 17399
    SMSG_ZONE_UNDER_ATTACK                            = 0x113,  // 5.4.0 17399
};

/// Player state
enum SessionStatus
{
    STATUS_AUTHED = 0,                                          // Player authenticated (_player == NULL, m_playerRecentlyLogout = false or will be reset before handler call, m_GUID have garbage)
    STATUS_LOGGEDIN,                                            // Player in game (_player != NULL, m_GUID == _player->GetGUID(), inWorld())
    STATUS_TRANSFER,                                            // Player transferring to another map (_player != NULL, m_GUID == _player->GetGUID(), !inWorld())
    STATUS_LOGGEDIN_OR_RECENTLY_LOGGOUT,                        // _player != NULL or _player == NULL && m_playerRecentlyLogout && m_playerLogout, m_GUID store last _player guid)
    STATUS_NEVER,                                               // Opcode not accepted from client (deprecated or server side only)
    STATUS_UNHANDLED                                            // Opcode not handled yet
};

enum PacketProcessing
{
    PROCESS_INPLACE = 0,                                        // process packet whenever we receive it - mostly for non-handled or non-implemented packets
    PROCESS_THREADUNSAFE,                                       // packet is not thread-safe - process it in World::UpdateSessions()
    PROCESS_THREADSAFE                                          // packet is thread-safe - process it in Map::Update()
};

class WorldPacket;
class WorldSession;

typedef void(WorldSession::*pOpcodeHandler)(WorldPacket& recvPacket);

struct OpcodeHandler
{
    OpcodeHandler() {}
    OpcodeHandler(char const* _name, SessionStatus _status, PacketProcessing _processing, pOpcodeHandler _handler)
        : name(_name), status(_status), packetProcessing(_processing), handler(_handler) {}

    char const* name;
    SessionStatus status;
    PacketProcessing packetProcessing;
    pOpcodeHandler handler;
};

extern OpcodeHandler* opcodeTable[TRANSFER_DIRECTION_MAX][NUM_OPCODE_HANDLERS];
void InitOpcodes();

// Lookup opcode name for human understandable logging
inline std::string GetOpcodeNameForLogging(Opcodes id, int direction)
{
    uint32 opcode = uint32(id);
    std::ostringstream ss;
    ss << '[';

    if (id < UNKNOWN_OPCODE)
    {
        OpcodeHandler* handler = opcodeTable[direction][uint32(id) & 0x7FFF];
        if (handler)
            ss << handler->name;
        else
            ss << "UNKNOWN OPCODE";
    }
    else
        ss << "INVALID OPCODE";

    ss << " 0x" << std::hex << std::uppercase << opcode << std::nouppercase << " (" << std::dec << opcode << ")]";
    return ss.str();
}

#endif
/// @}
